計算機概論、大意(資訊科學概論,電腦常識,電子計算機概論)題庫下載題庫

上一題
20 以一陣列 A 實作最大二元堆積(Max Binary Heap),一般方法為以 A[1] 代表根節點(Root),A[i] 代表堆積中的某一個節點及儲存其數值,而 A[2i] 和 A[2i+1] 分別為 A[i] 所代表的節點之左子節點 (Left Child)及右子節點(Right Child)。若目前堆積共有九個數字,且其對應的陣列之值 A[1], A[2], ... 依序為 18, 10, 13, 8, 7, 5, 2, 4, 6,則在提取最大值(Extract Max)後,A[3] 之值為何?
(A)5
(B)6
(C)8
(D)13


答案:登入後觀看
難度: 非常簡單
最佳解!
白龍@菜鳥公務員(107/ 國三下 (2018/05/07)
最大堆積為一完全二元樹,且每個節點的key值皆不小於其子節點最大堆積之Delete Max: 從根節點移除最大值後,將尾端資料移去根節點,依序向下檢查子節點,若子節點>該節點則互換,直到子節點比該節點小或檢查至.....觀看完整全文,請先登入
4F
路過3000 小一上 (2021/10/27)

為什麼跟13比而不是跟10比呢?


5F
Wei Wei 國三上 (2021/11/30)

61a60b8180104.jpg#s-1015,1024

6F
蔡明勳 高三上 (2022/09/23)

最大堆積 刪除步驟 :

1. 把最大節點A[1] 與最後一個節點交換,然後把它去除

2. 接著最後一個節點被換上來A[1]了,開始跟子節點比較,最大堆積就比較大的子節點換,最小堆積就跟比較小的子節點換

3. 重複(2.)直到滿足最大/最小堆積為止

20 以一陣列 A 實作最大二元堆積(Max Binary Heap),一般方法..-阿摩線上測驗