作業 2 : 以中序後序或中序前序決定一個二元樹與堆積排序
功能需求 (可參考上課 powercam:二元樹的新增與走訪):
1. 給定中序式與後序式,決定其二元樹;(印出遞迴處理的過程以印証所建的二樹是正確的 ! 請見下圖)
2. 給定中序式與前序式,決定其二元樹;
3. 利用 InsertHeap / DeleteHeap 完成 HeapSort
3-1 輸入整數 n 和希望產生的亂數範圍 range;
3-2 隨機產生 n 個範圍在 [0, range] or [1, range] 內的亂數整數,可印(或可不印)出這 n 個亂數(可自行定義,當數字大時可不印出);
3-3 利用 InsertHeap / DeleteHeap 完成 HeapSort==>自小至大排序此 n 個亂數;
參考介面 :
1. 中序前序決定二元樹 ==> 印出遞迴處理的過程以印証所建的二樹是正確的!
2. 中序後序決定二元樹
3. 插入堆積與刪除堆積
加分功能:
1. 友善的介面 (上課有提過的是其一也,可以自行發揮);
2. 自BST 中以"非遞迴方式"刪除一個整數資料 data (由使用者輸入)
3. 其它。
ex.把 binary search tree 畫出:
==============================
請將"整個程式專案資料夾"壓縮成壓縮檔(.rar , .7z ...) ,
並依照下列命名方式作業上傳至moodle
命名方式:Ex?_學號_姓名 (?為第幾次作業 , 例:第2次作業即為Ex2)
繳交期限:
甲班- 2018/4/17 23:30 前繳交至moodle
乙班- 2018/4/17 23:30 前繳交至moodle
作業繳交規則: https://sites.google.com/site/sjdsalg/homework
請盡早繳交 , 避免網路壅塞 , 導致無法繳交!