所屬科目:計算機概論
⑴加入ㄧ資料項目至佇列的後端 (Add item to the rear of the queue.): void enqueue (Q_TYPE *queue, ITEM_TYPE new_item ) /* Preconditions: queue not full */ (10 分)
⑵從佇列前端移除ㄧ資料項目 (Remove item from the front of the queue.): void dequeue (Q_TYPE *queue, ITEM_TYPE *old_item ) /* Preconditions: queue not empty */(10 分)
⑴畫出連續加入資料 37 與 36 後的 2-3 tree。(10 分)
⑵從給予的 2-3 tree,畫出連續刪除資料 70, 100, 與 80 後的 2-3 tree。(10 分)
⑴將此串資料建成二元搜尋樹(Binary Search Tree)。(10 分)
⑵承題⑴,執行二元樹的何種運算,可將此串資料做排序?(10 分)
四、給予ㄧ鏈結串列(Linked List)的節點(Node)定義如下:(20 分)請用 C 語言寫ㄧ函數 concat (NODEPTR *plist1, NODEPTR *plist2),將 plist2 鏈結串列接在鏈結串列 plist1 的後面,plist1 與 plist2 分別各是ㄧ環狀鏈結串列(Circular Linked List)之指標,plist1 與 plist2 指標分別指在各環狀鏈結串列的最後一個節點。
五、看ㄧ快取記憶體設計能否進一步改善,我們要瞭解快取記憶體失誤的種類(Types of Misses),請列舉三類快取記憶體的失誤(Three Types of Cache Misses),並請說明。 (20 分)