繳交時間:
資二甲的班: 2012/12/22 (週六) 23:30pm
資二乙的班: 2012/12/22 (週六) 23:30pm
A. 新增、查詢、刪除單向串列 (singly linked list) 中的節點元素
B. 新增、查詢、刪除雙向串列 (doubly linked list) 中的節點元素
C. push / pop 堆疊串列 (stack list)
D. insert / delete 佇列串列 (queue list)
部份題目即為期末考內容!
要求的功能:
A, B
1. 新增一元素成串列的第一個節點
2. 新增一元素至串列中第一個節點的後方 (使成第二節點)
3. 新增一元素成串列的最後一個節點
(每次皆從第一個節點開始逐一搜尋, 直到搜尋至最後一個節點後於其後新增節點)
4. 新增一元素成串列的最後一個節點
(利用一指標固定指向串列中最後一個節點, 新節點直接加至其後)
5. 搜尋元素 target 是否存在於串列中
6. 搜尋元素 target , 於其後新增一元素至串列中指定節點的後方 (若找不到, 應印出適當訊息)
7. 搜尋元素 target , 刪除其後的節點
8. 搜尋元素 target , 刪除之
9. 產生 n 個亂數的串列 (需可指定亂數範圍)
10. 印出整個串列 (此程序應在 1~9 要求中呼叫, 以確定該要求確實達成)
C.
11. Push 一指定元素至堆疊串列中
12. 從堆疊串列中 pop 一元素
13. 一次 push n 個元素至堆疊串列中,此 n 個元素為亂數產生
14. 一次從堆疊串列中 pop n 個元素
15. 印出整個堆疊串列 (此程序應在 11~15 要求中呼叫, 以確定該要求確實達成)
D.
16. Insert 一指定元素至佇列串列中
17. 從佇列串列中 delete 一元素
18. 一次 insert n 個元素至佇列串列中,此 n 個元素為亂數產生
19. 一次從佇列串列中 delete n 個元素
20. 印出整個堆疊串列 (此程序應在 16~20 要求中呼叫, 以確定該要求確實達成)
可能的執行畫面 (僅做 A 供參考,可自行設計操作介面,建議用頁籤分開 A, B, C 的操作):
頁籤 for doubly linked list
頁籤 for linked stack
頁籤 for linked queue