이진 검색 트리

정의

1 이진 검색 트리 (이진 검색 트리) T라는 하나의 빈 나무, 또는 이진 트리의 루트로 R = (키, 값)이며, 그 왼쪽과 오른쪽 하위 트리 이진 검색 트리입니다 키의 모든 노드들 (있는 경우)이 키보다 크지 않은 경우, N (R)의 좌측 서브 트리에서; R의 우측 서브 트리 O 키의 모든 노드들 (있는 경우)는 키 이상인. 

 

T는 이진 트리 이진 검색 트리에있어서,이 경우에만 경우 시퀀스 전순 단조 비 감소이다. 

 

검색 알고리즘

대상 항목을 (검색이 성공) 찾을 때까지 재귀 축소 봐의 형태로, 루트에서 시작하거나 (조회 실패) 빈 트리를 찾을 수 축소 : 이진 검색 트리 알고리즘은 아이디어를 찾는 것입니다. 

 

 

재귀의 각 수준에서 현재 노드 일단 다음 이봐, 조회가 실패 이미 비어, 널 (null)이고, 그렇지 않으면 우리는 키 코드와 비교를 할 수있는 현재 노드의 키 코드를 대상으로합니다. 이진 검색 프로세스와 유사 조회 테이블을 주문, 여기에 비교 세 가지 가능성에 지나지 않는다 :

1. (노드 (36)에서 예) 목표 키 크다. 이 시점에서 재귀 조회를 할 수있는 권리 서브 트리를 드릴 수 있습니다;

2. 목표 키 (노드 (93) 및 (58)에서 예) 작다. 이 때, 깊이있는 재귀 조회를 수행하는 서브 트리를 왼쪽으로

3. (노드 (46)에서 예를 들어)와 동일. 이 알고리즘에서 최종 "성공을 찾아"합니다. 

 

 

이진은 최악의 경우, 높이의 제한없이 일반적으로 나무를 검색, 높이를 구성하는 n 개의 노드 이진 검색 트리 Θ (N)에 도달 할 수 있습니다. 모든 노드에 아이가 남아 있지 때 그림 VII.5에 도시 된 바와 같이, 이러한 극단적 인 상황입니다. 이 경우, 검색 작업은 사실, 이러한 "바이너리"탐색 트리가 제몫을 조회 주문 테이블에 저하 되었기 때문에 ⎯⎯이, 놀라운 일이 아니다 선형 시간의 나쁜 경우에 필요할 수있다.

검색 알고리즘

 

삽입 알고리즘

 

 

 

삭제 알고리즘

추천

출처www.cnblogs.com/CherryTab/p/12056755.html