Data Structure 썸네일형 리스트형 비선형 자료구조: tree, graph, forest Tree: 트리는 시작 노드인 root로부터 시작하고, 세대(degree)를 거치며 아래로 내려온다. 모든 노드는 0개 혹은 여러 개의 자식 노드(child, children)을 가진다. 자식 노드가 없는 노드는 leaf라고 한다. (degree = 0) 자식 노드가 1개라도 있는 노드는 internal node라고 한다. (degree > 0) 모든 노드는 단 하나의 parent 노드를 가진다. root노드만 빼고. Degree = 해당 노드가 가지고 있는 자식의 개수. 같은 노드를 부모로 가지는 노드들은 siblings라고 한다. Unordered/ordered 자식의 순서가 있으면 ordered. Paths: 노드들의 순서 시퀀스. 경로가 “A노드-B노드-C노드”이면, A는 B의 부모, B는 C의 .. 더보기 선형 자료구조: array, stack, queue 선형 자료구조 Linear data structure은 데이터의 순서가 일렬로 나열된 것을 말한다. list, stack, queue 등이 있다. List list 혹은 array는 데이터를 인덱스로 참조할 수 있고, 실제 메모리 상에서도 인덱스의 순서대로 저장공간의 주소를 부여 받는다. list의 어떤 위치에 데이터를 끼워넣기 하거나 삭제하려고 할 경우, 해당 위치 이후의 모든 요소들의 위치를 옮기는 과정이 필요하다. 아주 비효율적인 작업이다. 이런 list의 비효율성을 보완하기 위해 만들어진 것이 Linked list이다. Linked List 모든 요소들이 자기 자신의 값을 가지고, 다음 요소의 주소를 linking하고 있는 list Item과 link(hook)을 가지는 list list는 각 요.. 더보기 이전 1 다음