1 min read
...로 계산되므로 포인터 없이 배열만으로 트리를 표현할 수 있고, Heap 이 이 성질을 쓴다. 순회 노드를 한 번씩 방문하는 순서는 자기 자신을 언제 방문하느냐로 갈린다. 자세한 내용은 Tree Traversal 에 있다.
Post-Order Traversal Post-order traversal은 tree traversal에서 왼쪽 subtree → 오른쪽 subtree → 현재 node 순서로 방문하는 방식이다. 자식 node를 모두 처리한 뒤 parent를 처리하므로, tree를 아래에서 위로 접어 ...
Tree Traversal Binary Tree
Pre-order traversal 은 tree 를 순회할 때 현재 node 를 먼저 방문하고, 그 다음 left subtree, right subtree 순서로 방문하는 방식이다.
Post-Order Traversal Post-order traversal은 tree traversal에서 왼쪽 subtree → 오른쪽 subtree → 현재 node 순서로 방문하는 방식이다.
각 노드가 자식을 최대 두 개까지만 갖는 트리다. 두 자식은 왼쪽·오른쪽으로 구분되며, 자식이 하나뿐이어도 그것이 왼쪽인지 오른쪽인지가 구조상 의미를 갖는다.
Inorder Search 는 root 를 중간 단계에서 search 하는 방식이다. Traverse the left subtree Visit the root.
Insertion Sort Selection Sort Merge Sort Bubble Sort quick Sort Heap Sort .
Depth-First Search. 그래프나 트리에서 한 갈래를 끝까지 따라 내려간 뒤, 더 갈 곳이 없으면 한 칸 되돌아와 아직 안 가본 갈래로 다시 내려가는 탐색 방식이다. “깊이 우선” 이라는 이름은 이웃을 폭넓게 훑기 전에 한 방향으로 먼저 파고든다는 뜻이다.
선택 정렬은 다음과 같은 순서로 이루어진다. 주어진 리스트 중에 최소값을 찾는다. 그 값을 맨 앞에 위치한 값과 교체한다. 맨 처음 위치를 뺀 나머지 리스트를 같은 방법으로 교체한다. 하나의 원소만 남을 때까지 위의 과정을 반복한다.
BFS(Breadth First Search)는 시작 node 에서 가까운 node 부터 층별로 방문하는 graph/tree traversal 방식이다. 보통 queue 를 사용한다. 동작 흐름 시작 node 를 queue 에 넣고 방문 처리한다.
스택은 한 쪽 끝에서만 자료를 넣거나 뺄 수 있는 선형 구조 (LIFO - Last In First Out) 으로 되어 있다.
삽입 정렬은 자료 배열의 모든 요소를 앞에서부터 차례대로 이미 정렬된 배열 부분과 비교하여, 자신의 위치를 찾아 삽입함으로써 정렬을 완성하는 알고리즘이다.