20182330 2019-2020-1 《數據結構與面向對象程序設計》實驗八報告
課程:《程序設計與數據結構》
班級: 1823
姓名: 魏冰妍
學號:20182330
實驗教師:王志強
實驗日期:2019年11月11日
必修/選修: 必修html
1.實驗內容
- 參考教材PP16.1,完成鏈樹LinkedBinaryTree的實現(getRight,contains,toString,preorder,postorder)用JUnit或本身編寫驅動類對本身實現的LinkedBinaryTree進行測試,提交測試代碼運行截圖,要全屏,包含本身的學號信息課下把代碼推送到代碼託管平臺
- 基於LinkedBinaryTree,實現基於(中序,先序)序列構造惟一一棵二㕚樹的功能,好比給出中序HDIBEMJNAFCKGL和後序ABDHIEJMNCFGKL,構造出附圖中的樹。用JUnit或本身編寫驅動類對本身實現的功能進行測試,提交測試代碼運行截圖,要全屏,包含本身的學號信息。課下把代碼推送到代碼託管平臺
- 本身設計並實現一顆決策樹。提交測試代碼運行截圖,要全屏,包含本身的學號信息課下把代碼推送到代碼託管平臺
- 輸入中綴表達式,使用樹將中綴表達式轉換爲後綴表達式,並輸出後綴表達式和計算結果(若是沒有用樹,正常評分。若是用到了樹,即便有小的問題,也酌情給滿分。提交測試代碼運行截圖,要全屏,包含本身的學號信息
2. 實驗過程及結果
實驗一
查找元素並進行前序後序排列。下圖調用以前的LinkedBinaryTree生成了一棵樹。
java
實驗二
用前綴和後綴表達式畫出一棵樹。主要思想就是定一個,找一個,兩者相統一。
緩存
實驗三
先本身模擬出一棵決策樹,而後根據書上的decidetree改編本身的決策樹。
數據結構
實驗四
中綴轉後綴與以前作過的後綴轉前綴相似,不一樣的是加入了符號運算這一環節。
maven
3. 實驗過程當中遇到的問題和解決過程
- 問題1:打開Idea以後module裏的java文件所有變成file型文件,沒法運行。如圖所示
(圖中文件名後更改成實驗八)ide
- 問題1解決方案:經過找同窗和上網查找,發現這一類問題還很多。
(1)java文件所有變成file型文件,post
- 項目結構須要有一個target目錄,須要一個src目錄
(2)module文件變成了普通文件夾。就好比這樣,帶藍色方塊的就是module文件夾。其實兩者能夠相互轉化,學習
- 右擊project,選擇第二項「add framework support」,而後從對話框左側選擇「Maven」,OK便可
- 設置maven倉庫地址:右擊file,選擇settings,找到maven,設置maven home directory以及後面兩項。(圖片大小超過限制。。我就不傳圖了)
- OK完成,等加載刷新。
(3)還有一種狀況是導入文件的時候,如何導成module文件。測試
- 點擊file->project structure..->Modules。點擊右上角+加號 -》import Modules
- 選擇你的項目,點擊肯定。在以下頁面選擇import modules from external model。選擇maven,而後一直點擊下一步next最後點擊完成finished
導入以後以下,若是沒有顯示項目,加入點擊Add Content Root加入項目路徑。而後點擊OK , 主界面正常顯示項目結構
idea
導入以後以下,若是沒有顯示項目,加入點擊Add Content Root加入項目路徑。而後點擊OK , 主界面正常顯示項目結構
問題2:又出現了找不到主類的問題
- 問題2解決方案:上網找到一個神仙方法——清除緩存並重啓!
其餘(感悟、思考等)
本次實驗的難度不高,可是能看到調用了很是多以前寫過的方法,層層調用環環相扣,若是以前的代碼沒有弄好,就是大工程了。並且樹的理解很重要,必要的時候能夠先在紙上擬出思路,再進行程序設計。
參考資料