일단 씻고 나가자

23.03.20 본문

Study/닥치는 대로 주워 담기

23.03.20

일단 씻고 나가자 2023. 3. 21. 01:06

2023. 03. 20 월요일

 

- 힙이란? 성질? 삽입과 삭제의 방법?

: 완전 이진 트리 형태로 중복 값을 허용한 반 정렬 상태. 반 정렬의 뜻은 같은 레벨의 자식들끼리는 정렬이 보장되지 않는다는 뜻. 최소 힙은 상위 노드가 더 작은, 최대 힙은 상위 노드가 더 큰 형태이다.

완전 이진 트리 형태이기 때문에 배열로 구현해도 충분하다.

 

최소 힙 기준. 삽입의 경우 트리의 가장 끝 위치에 데이터를 삽입하고, 부모 노드와 키를 비교한 후 작을 경우 부모 자리와 교체하는 것을 반복한다.

삭제의 경우 최상위 노드를 반환 및 삭제하고, 가장 마지막 위치의 노드를 최상위 노드로 위치시킨 후 자식 노드 둘과 비교하여 더 작은 노드와 자리를 교체한다.

 

 

- [Java] asList 사용법과 정수 배열을 ArrayList로 받을 때 주의점?

: List<Integer> list = new ArrayList(Arrays.asList(Integer[]));

asList의 매개변수를 int배열로 받게 되면 제너릭과 형태가 달라져서 배열 자체를 받게 된다.

따라서 배열 자체를 Integer로 바꿔서 받아줘야 함.

 

 

- [Java] Set을 이용한 교집합, 합집합, 차집합의 함수?

: 교집합 -> set1.retainAll(set2); // set1에는 ~집합 원소만 남음.

합집합 -> set1.addAll(set2);

차집합 -> set1.removeAll(set2);

 

 

- 스프링에서 모델 안에 있는 값을 읽어 오는 기호?

: ${변수 이름}

 

 

- gitobject3가지 형태? commit 시 일어나는 변화?

: tree, blob, commit.

commit 시에 commit의 버전 또한 obj로 저장되는데, 그 내부에는 tree, blob이 있다.

tree에는 당시 commit 시에 담겨 있는 파일들의 내용과 이름에 대한 것들이 SAH1으로 변형되어 링크되어 있음.

blob은 실제 담기는 파일의 내용.

parent라는 정보도 있는데, 이전의 commit에 관한 내용이 담겨 있다.

 

'Study > 닥치는 대로 주워 담기' 카테고리의 다른 글

23.03.22  (1) 2023.03.23
23.03.21  (0) 2023.03.22
23.03.17  (0) 2023.03.21
23.03.16  (0) 2023.03.17
23.03.15  (0) 2023.03.16