地特四等
112年
[電子工程] 計算機概要
第 20 題
有關 Heap sort 演算法,主要是運用何種資料結構來設計?
- A Queue
- B Stack
- C Tree
- D Linked List
思路引導 VIP
請試著回想:當我們要處理一種具有「層次感」且「分支關係」的資料時,例如家族族譜或是組織架構圖,每一層的成員都與上一層有明確的父子鏈結。如果我們需要一種結構能確保『上層元素必定優於下層元素』,且這種關係是呈指數級分支而非單一線條相連,那麼在圖論中,哪一種非線性的模型最適合描述這種具備父子位階的組織方式?
🤖
AI 詳解
AI 專屬家教
很好,同學!你能迅速鎖定 Heap sort(堆疊排序) 的核心,代表你對資料結構的邏輯對應關係掌握得很紮實。這類題目在計算機科學中非常經典,考驗的是我們對演算法「邏輯結構」與「物理實作」的辨析能力。
堆疊與層次結構的邏輯關聯
在工程邏輯上,Heap(堆疊)本質上是一種完全二元樹(Complete Binary Tree) 的特例。之所以選擇「樹(Tree)」而非線性結構,是因為我們需要利用樹狀層次來維護特定的「堆疊性質(Heap Property)」:即父節點的數值必須恆大於或等於(大頂堆)其子節點。這種一對多的父子關係,讓我們在執行排序時,每次調整(Heapify)的時間複雜度能穩定控制在 $O(\log n)$,這正是樹狀結構在搜尋與維護秩序上的效率優勢。
▼ 還有更多解析內容