Binary Search Tree
-
트리대학/자료구조실습 2022. 12. 15. 21:22
트리에 대한 이론적인 부분은 세 번에 걸쳐 포스팅한 바 있다. Tree 트리구조는 아주 중요한 알고리즘이라 세 번에 나누어서 진행할 예정이다. Tree... 이게 얼마나 사기(?)냐 하면은 트리를 이용하여 데이터를 관리할 경우 데이터 탐색에 필요한 시간이 O(n^2)에서 O( with611.tistory.com Tree - Binary Search Tree Binary Tree 중, 아래의 조건을 만족하는 Tree이다. 1. 루트노드의 왼쪽 서브트리의 노드는 루트노드보다 작거나 같아야 한다. 2. 루트노드의 오른쪽 서브트리의 노드는 루트노드보다 커야한다. BST로 with611.tistory.com Tree - Heap, B-Tree Heap Heap은 complete binary tree의 일종으로 추..
-
Tree - Binary Search Tree대학/자료구조 2022. 12. 4. 21:48
Binary Tree 중, 아래의 조건을 만족하는 Tree이다. 1. 루트노드의 왼쪽 서브트리의 노드는 루트노드보다 작거나 같아야 한다. 2. 루트노드의 오른쪽 서브트리의 노드는 루트노드보다 커야한다. BST로 언제나 그랬 듯 가방을 만들건데, 이 부분은 코드보단 개념과 데이터 추가/삭제를 이해하는 편이 좋기 때문에 pseudo code로 작성하겠다. 생성자 루트 포인터를 NULL로 초기화. 복제 생성자 인자로 들어온 루트 포인터를 복사하고, 그 결과를 루트 포인터로 가리키게 한다. 앞서 구현한 tree_copy함수를 사용 파괴자 모든 노드를 해제한다. 앞서 구현한 tree_clear함수를 사용 size() 모든 노드의 갯수를 세는 함수 1 + size(왼쪽 서브트리) + size(오른쪽 서브트리) 이렇..