array

힙(Heap)은 배열 또는 연결 리스트(Linked List)로 구현할 수 있다. 연결 리스트 보다는 배열로 구현하는 것이 연산시 노드를 탐색하는 과정에서 비교적 간단하여 배열로 구현했다. 연결 리스트로 구현하는 경우 인덱스가 비교적 복잡해진다.Cf. 리스트로 구현하면 `resize()` 메서드를 따로 둘 필요가 없어진다. `capacity`값도 마땅히 필요하지 않아진다.Cf. 리스트로 구현하면 인덱스는 0 이상 `this.size` 미만이며, 자식 노드는 특정 노드의 인덱스가 \(n\)이라면, \(n * 2 + 1\), \(n * 2 + 2\)가 된다.필요시 참고용도로 리스트로 힙을 구현하는 코드를 일부 작성해두신 분의 블로그 게시글 링크를 첨부한다. 전체 코드(최소힙을 구현하여 루트값이 가장 작은 형..
문자열 배열을 Set으로 만들어 중복되는 요소를 제거하고, 이를 다시 스프레드 연산자를 통해 배열로 만들 수 있다. const arr = ['a', 'b', 'c', 'd', 'a', 'c']; const set = new Set(arr); // {'a', 'b', 'c', 'd'} const result = [...set]; // ['a', 'b', 'c', 'd']
devYH
'array' 태그의 글 목록