반응형

TIL 15

Queue 구현해보기

Queue 배열을 사용해서 한번 ListNode를 사용해서 한번 queue는 기본적인 자료구조의 한가지로 먼저 넣은 데이터가 먼저 나오는 선입선출 FIFO(First In First Out) 구조로 저장하는 구조이다. 영어에서 queue는 무언가를 사러 일렬로 서 있는 줄을 말한다. 후입선출에 스택과는 반대되는 개념이다. 구현 public class ArrayQueue { private final int MAX_SIZE = 10; private int[] data; private int head; private int tail; public ArrayQueue() { this.data = new int[MAX_SIZE]; this.head = 0; this.tail = 0; } /** * head의 위치..

TIL 2021.01.03

stack 구현해보기

Stack int 배열을 사용해서 정수를 저장하는 Stack을 구현하세요. void push(int data)를 구현하세요. int pop()을 구현하세요. ListNode head를 가지고 있는 ListNodeStack 클래스를 구현하세요. void push(int data)를 구현하세요. int pop()을 구현하세요. stack은 제한적으로 접근할 수 있는 나열 구조이다. 접근 방법은 언제나 목록의 끝에서만 일어나 끝먼내기 목록(Pushdown list)이라고도 한다. 한 쪽 끝에서만 자료를 넣거나 뺄 수 있는 선형 구조로 후입선출(LIFO - Last In First Out)의 구조를 이루고 있다. push 자료를 밀어 넣는것 pop 자료를 꺼내는것, 가장 최근에 push한 자료부터 나오게 된다...

TIL 2021.01.02

LinkedList 구현해보기

LinkedList LinkedList에 대해 공부하세요. 정수를 저장하는 ListNode 클래스를 구현하세요. ListNode add(ListNode head, ListNode nodeToAdd, int position)를 구현하세요. ListNode remove(ListNode head, int positionToRemove)를 구현하세요. boolean contains(ListNode head, ListNode nodeTocheck)를 구현하세요. LinkedList란 배열과 비슷하게 데이터들의 묶음을 표현할 때 사용할 수 있다. 배열은 연속적인 공간에 데이터를 저장하고 이들의 위치를 통해 (포인터) 데이터에 접근하는 반면, LinkedList는 노드 안에 데이터와 다음 노드를 가리키는 주소 값을 ..

TIL 2021.01.02

Windows Terminal에서 ubuntu 사용하기

Windows 10이 되면서 WSL이라고 하여 Windows안에서 linux를 사용할 수 있는 시스템을 지원하기 시작했다. Microsoft Store에서 ubuntu를 다운 받는다. Windows Terminal에서 Ctrl+,를 눌러 설정창을 띄운뒤 list항목에 ubuntu를 추가하면 된다. 추가하려면 guid를 알아야하는데 ubuntu창에서 uuidgen를 입력하면 된다. $ uuidgen Terminal 설정창에 미리 적혀있는 것들을 참고하여 list에 추가한다. zsh쉘와 oh-my-zsh를 설치하여 ubuntu Terminal를 꾸며줄 수 있다. zsh설치 $ sudo apt-get install zsh $ chsh -s /usr/bin/zsh # 기본 쉘로 변경oh-my-zsh $ wget..

TIL 2020.12.10

[TIL] 200828 간단한 IntelliJ 단축키 팁

키보드로 코드를 입력하다가 마우스로 어떤 명령을 실행하려 할때 흐름이 끊기는 듯한, 생각이 날아가는 듯한 느낌을 받을 때가 있다. 키보드 단축키를 따로 공부하지 않아도 해당 명령의 단축키가 어떻게 되는지 알 수 있는 플러그인이 있다. 인텔리제이 단축키 ESC 인젤리제이에서 ESC키를 누르면 언제든지 코드를 입력할 수 있는 창이 선택됨. ALT + 1 MACOS에선 컨트롤 + 1 프로젝트 뷰를 선택할 수 있음. ALT + ins 프로젝트뷰에서는 클래스와 같은 파일들을 생성할 수 있음 shift 두번을 누르면 모든것을 검색할 수 있음 인텔리제이에서 Key Promoter X 플러그인을 설치하면 마우스로 실행한 명령들을 키보드 단축키로 알려주는 팝업창이 뜬다.

TIL 2020.08.28

[TIL] 200730 spring boot에서 mongodb 사용하기

MongoDB에 대한 지식이 없어서 spring boot에서는 어떻게 mongodb에 데이터를 insert 시키는지에 대해 공부했다. MongoDatabaseFactory 를 사용하여 추가하는 방법 @Autowired MongoDatabaseFactory mongoDatabaseFactory; ... @Bean public ApplicationRunner applicationRunner(){ return args -> { MongoDatabase db = mongoDatabaseFactory.getMongoDatabase(); db.createCollection("collectionName"); db.getCollection("collectionName").insertOne( new Document() ..

TIL 2020.07.31

200123 jQuery 기본문법, 함수

jQuery jQuery는 자바스크립트 라이브러리이기 때문에 js파일 형태로 존재한다. html에서 jQuery를 사용하기 위해서는 jQuery 다운받은 후 태그를 사용하여 참조한다고 알려주어야 jQuery의 문법을 html에서 이해할 수 있다. jQuery를 이용하지 않고 자바스크립트만 이용해도 충분히 가능하다. jQuery는 문법같은것을 간소화 시켜 개발자를 편하게 해주는 도구일 뿐이다. //javascript 문법 window.onload = function(){} //jQuery 문법 $(document).ready(function(){}) //jQuery 문법 간소화 $(function(){}) 3개의 코드 모두 같은 내용으로 똑같이 실행된다. 현재 문서가 브라우저에 로딩시 무명함수를 호출한다...

TIL 2020.01.24

200122 HTML5, CSS3 추가된 것들

HTML5 HTML5에서 새로 추가된 기존에 없던 태그와 속성을 조금만 알아보겠다. 전화번호 label태그는 폼의 양식에 이름을 붙이는 태그로 for의 값을 input의 id와 같게하면 서로 연결되어 이름을 클릭해도 입력란을 클릭한것과 같은 효과를 낸다. placeholder 속성은 입력란 안에 문자열이 보인다. 일종의 힌트 제공. 입력란에 문자 입력시 사라진다. autofocus는 자동으로 커서 위치를 지정해준다. readonly는 value값을 수정할 수 없게 한다. 읽기 전용으로 만들어 버린다. 브라우저마다 지원여부가 다르다. datalist 태그는 select와 유사하다. form 요소에서 미리 지정된 옵션 목록을 제공해준다. label속성은 옵션에 대한 짧은 설명으로 드롭다운 리스트에 표시가 된..

TIL 2020.01.22

200121 Date(), RegExp, Ajax

Date 생성자 날짜와 시간을 생성하는 생성자 // 생성자가 실행될때 그 순간의 날짜와 시간을 today변수에 대입 var today = new Date().toLocaleString(); //toLocaleString 날짜와 시간을 한국 표기법으로 변환해준다. substring(x,y); // x번째 글자부터 y번째 글자까지만 출력 day = today.substring(x, y); // 지정한 시간마다 함수를 반복 호출 var 변수명 = setInterval(function(){ 실행문 }, 시간) // 1000 -> 1초 // 지정한 시간후에 함수 호출을 중지 setTimeout(function(){ clearInterval(변수명); //setInterval에서 설정한 변수명 }, 시간) RegE..

TIL 2020.01.21
반응형