2 개의 이진 검색 트리는 순차 순회에 동의 할 때 선형 적으로 동일하다고합니다. 다음 정리는 왜 나무 회전이 그렇게 근본적인지를 설명합니다.
A와 B를 이진 검색 트리로 둡니다. 그런 다음 A와 B는 일련의 트리 회전으로 연결된 경우에만 선형 적으로 동일합니다.
오래 전에 데이터 구조에 대해 처음 알게되었을 때이 결과를보고 트리 회전의 특수한 상태를 더 깊이 이해하고 싶었습니다.
증거는 간단하고 직관적입니다. 가장 작은 요소를 왼쪽 척추를 따라 루트 위치까지 회전시킵니다. 불변 순서에 따라이 재정렬 된 트리는 왼쪽 하위 트리를 가질 수 없습니다. 이제 오른쪽 하위 트리에서 되풀이합니다. 결과는 선형 동등성을 테스트하기위한 일반적인 형식입니다.
그것이 기본 정리이지만, 나는 문학에서 그것을 결코 접한 적이 없다. 다음에이 결과를 사용해야 할 때 참조 해 주셔서 감사합니다.
(Bonus brain teaser : 두 개의 선형 적으로 동등한 이진 검색 트리를 연결하는 가장 짧은 트리 회전 시퀀스를 찾는 가장 좋은 알고리즘은 무엇입니까?)