File tree 1 file changed +10
-10
lines changed
1 file changed +10
-10
lines changed Original file line number Diff line number Diff line change 962
962
SiftDown(i)
963
963
- Space Complexity: O(1) (In place algorithm)
964
964
- Time Complexity: ** O(n)**
965
- - Height Nodes # T(SiftDown) T(BuildHeap)
966
- log_2(n) 1 log_2(n) 1 * log_2(n)
967
- log_2(n) - 1 2 log_2(n) - 1 2 * [ log_2(n) - 1]
968
- ... ... ... ...
969
- 2 ≤ n/4 2 n/4 * 2
970
- 1 ≤ n/2 1 n/2 * 1
971
- T(BuildHeap) = n/2 * 1 + n/4 * 2 + ... + 1 * log_2(n)
972
- = n/2 * 1 + n/4 * 2 + ... + n / 2^log_2(n) * log_2(n)
973
- = n [ 1/2 + 2/4 + 2/8 + ... log_2(n)/2^log_2(n)] < n * 2
974
- = O(n)
965
+ - Height Nodes # T(SiftDown) T(BuildHeap)
966
+ log_2(n) 1 log_2(n) 1 * log_2(n)
967
+ log_2(n) - 1 2 log_2(n) - 1 2 * [ log_2(n) - 1]
968
+ ... ... ... ...
969
+ 2 ≤ n/4 2 n/4 * 2
970
+ 1 ≤ n/2 1 n/2 * 1
971
+ T(BuildHeap) = n/2 * 1 + n/4 * 2 + ... + 1 * log_2(n)
972
+ = n/2 * 1 + n/4 * 2 + ... + n / 2^log_2(n) * log_2(n)
973
+ = n [1/2 + 2/4 + 2/8 + ... log_2(n)/2^log_2(n)] < n * 2
974
+ = O(n)
975
975
- Step 2: Sort the Heap
976
976
- HeapSort(A[1 . . . n])
977
977
BuildHeap(A)
You can’t perform that action at this time.
0 commit comments