왜 세그먼트 나무는 4 배의 공간을 엽니 다

질문 1 : 공간 세그먼트 나무는 2 * n이 될 수 있습니다 소요? ? ?

이지도는 방식으로 지어진를 들어, 완전하게 이진 트리에서 구축하지만, 완전한 바이너리 성격을 가지고 혜택을 (부모 노드가 x는 다음 왼쪽 그의 아들이 2 배이며, 우측의 아들 + 1 2 배) : 당신은 필요하지 않습니다을 많이 절약 할 수 있습니다 노드. 이진 트리가 같은 특성을 갖는 때문에, 2 * n을 공간이 충분하지해야합니다! ! 아래를 참조하십시오 :

 

 

질문 2 : 공간 세그먼트 나무는 3 * n을 될 수있는 소요? ? ?

증명 : 길이 N의 집합 배열 세그먼트 트리에서, 가장 우측의 노드 번호 F (N)이다. (도 상부 길이 N = 6, 가장 우측의 노드 (13)의 수)

코드를 테스트 :

아이디어 : 기부는 프로세스를 관찰함으로써 결정되는 큰 공간 경계 3 * n 인 노드 여부.

결과 :이 국경이 3N 공간의 많은이며, 가장 작은 N = 36, 우리가 일반적으로 그렇게 그림 N = 36 그림, 단지 n은 상대적으로 작은 그릴 수, 3N 경계 있는지 확인하기 위해 사진을 애니메이션으로 손 발견, 당신은 발견 할 것이다 3 * n을 아웃 오브 바운드 될 것입니다! ! !

추천

출처www.cnblogs.com/FengZeng666/p/11446827.html