임의로 구성된 이진 검색 트리의 로그 높이가 증명


10

n 개의 노드를 가진 무작위로 빌드 된 이진 검색 트리 의 예상 높이 가 O ( log n ) 임을 어떻게 증명 합니까? CLRS 알고리즘 소개 (12.4 장)에 증거가 있지만 이해가되지 않습니다.영형(로그)


1
어떤 질문? 어떤 예입니까? 자세한 내용을 수정하고 알려주십시오.
Ran G.

3
약어 (예 : BST)를 사용하지 말고 우리 대부분은 CLRS 책이 없다고 가정하십시오. 여기에서 정리를 복사하고 이해하지 못하는 것이 무엇인지 설명하면 더 많은 답변을 얻을 수 있습니다.
Ran G.

2
이것은 바이너리 검색 트리가 어떻게 구축 되는지 에 달려 있습니다. (결과가 맞지 않더라도 증거는 유효합니다.) 더 자세한 내용이 유용 할 것입니다.
피터 쇼어

답변:


21

먼저 직관적으로 생각해 봅시다. 최상의 시나리오에서 트리는 완벽하게 균형을 이룹니다. 최악의 시나리오에서 트리는 전체적으로 불균형합니다.

균형 잡힌 이진 검색 트리최악의 이진 검색 트리

루트 노드에서 시작하는 이 좌측 트리 가지고 두번 트리 갖도록 이어지는 각 깊이에서 많은 노드로서 N = Σ H = 0 (2) I = 2 H + 1 - 1 개 노드와 높이 (H) 에있다 ( 이 경우 3). 약간의 수학으로 n 2 h + 11 h log 2 ( n + 1 ) 1 l opn=i=0h2i=2h+11h , 즉높이가 O ( log n ) 입니다. 완전히 불균형 한 나무의 경우, 나무의 높이는 단순히 n - 1 O ( n ) 입니다. 우리는 한계가 있습니다.n2h+11hlog2(n+1)1log2nO(logn)n1O(n)

정렬 된리스트 에서 균형 트리를 구성하는 경우 루트 요소로 중간 요소를 선택합니다. 대신 무작위로 나무를 구성하는 경우, n 개의 노드 중 하나가 동일하게 선택 될 수 있으며 나무의 높이는 다음과 같습니다 : h e i g h t t r e e = 1 + max ( h e i g h t l e f t s u b t r e{1,2,,n}n 이진 검색 트리에서 왼쪽 하위 트리에는 루트 노드보다 작은 키만 포함해야한다는 것을 알고 있습니다. 우리는 랜덤하게 선택하는 경우 즉, I t의 시간 요소를 좌측 서브 트리를 갖는다I-1 개소자 및 오른쪽 하위 트리 갖는N-그래서 더 콤팩트 요소 : H , N =1+최고( H I를 -

heih아르 자형이자형이자형=1+최대(h이자형나는h이자형에프 에스아르 자형이자형이자형,h이자형나는h아르 자형나는h 에스아르 자형이자형이자형)
나는h나는1나는. 거기에서 각 요소가 똑같이 선택 될 가능성이 높으면 예상 값은 가중 평균이 아닌 모든 사례의 평균에 불과합니다. 따라서 :E[ h n ]= 1h=1+최대(h나는1,h나는)이자형[h]=1나는=1[1+최대(h나는1,h나는)]

와이=2h와이=2×최대(와이나는1,와이나는).

이자형[와이]=나는=11이자형[2×최대(와이나는1,와이나는)]=2나는=1이자형[최대(와이나는1,와이나는)]
1나는나는=나는나는이자형[엑스]=이자형[엑스]최대엑스와이이자형[최대(엑스,와이)]이자형[최대(엑스,와이)+(엑스,와이)]=이자형[엑스]+이자형[와이]
이자형[와이]2나는=1(이자형[와이나는1]+이자형[와이나는])=2나는=012이자형[와이나는]
나는=1와이나는1=와이0와이나는=와이1나는=와이나는1=와이1와이나는=와이0와이0와이1이자형[와이]4나는=01이자형[와이나는]

이 시점에서 CLRS는 유도 증거 가져옵니다.이자형[와이]14(+)나는=01(나는+)=(+4)와이=2hh=로그2=로그2영형(로그)케이케이

2이자형[엑스]이자형[와이]4나는=01이자형[와이나는]14(+)=(+)(+2)(+1)24이자형[h]=영형(로그)

와우 고마워 !!!! 예상 가치에 대해 잘 모르지만 이러한 종류의 의미가 있습니다. 알고리즘을 수행하기 전에 신중한 수학 과정을 수행하지 않았습니다. 의심스러운 점이 있으면 더 많은 의견을 게시 할 것입니다. 감사합니다
user1675999

그러나 왜 지수 높이가 선택한 이항보다 작거나 같습니까? 나는 왜 우리 가 다른 가장 큰 항을 가진 다른 이항 법을 선택할 수없고 정확히 같은 수학을 할 수 없는지 이해하지 못합니다 . 아마 바보 일지 모르지만 나는 왜 그런지 알 수 없습니다 ... 완벽하게 이해되면, 그들은 단지 파란색에서 완전히 무언가를 끌어 내야했으며 아무런 설명도없이 그것들이 옳다는 것을“증명”한다고 말해주었습니다.
Zeks

@Zeks 따라서 더 큰 항을 가진 다른 이항을 선택할 수 있습니다. 항이 여전히 다항식 ( n^k) 인 k경우 big-O 표기법 (3이 삭제 된 방식)으로 삭제 되므로 결론은 같습니다 . 우리가 뭔가 지수 (치환한다면 e^n), 그것은 여전히 것이 올바른 단지가 아닌, 상한 하나. 우리는 예상 높이가 최소한 대수임을 알고 있으므로 최대 대수라고 결정하면 꽉 조입니다.
Merbs

@DavidNathan 나는 당신의 관심사를 이해하지 못합니다-1 / n이 상수인지 또는 합산 밖으로 이동할 수 있는지 의심 스럽습니까? 상수 2와 마찬가지로 나머지 증거를 단순화하기 위해 설명 목적으로 크게 취해집니다.
Merbs
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.