20202319 2021-2022-1 《資料結構與面向物件程式設計》實驗九報告
#20202319 2021-2022-1 《資料結構與面向物件程式設計》實驗九報告
課程:《程式設計與資料結構》
班級:2023
姓名: 呂炳翰
學號:20202319
實驗教師:王志強
實驗日期:2021年12月16日
必修/選修: 必修
一、實驗內容
(1) 初始化:根據螢幕提示(例如:輸入1為無向圖,輸入2為有向圖)初始化無向圖和有向圖(可用鄰接矩陣,也可用鄰接表),圖需要自己定義(頂點個數、邊個數,建議先在草稿紙上畫出圖,然後再輸入頂點和邊數)(2分)
(2) 圖的遍歷:完成有向圖和無向圖的遍歷(深度和廣度優先遍歷)(4分)
(3) 完成有向圖的拓撲排序,並輸出拓撲排序序列或者輸出該圖存在環(3分)
(4) 完成無向圖的最小生成樹(Prim演算法或Kruscal演算法均可),並輸出(3分)
(5) 完成有向圖的單源最短路徑求解(迪傑斯特拉演算法)(3分)
二、實驗過程及結果
(1) 初始化:根據螢幕提示(例如:輸入1為無向圖,輸入2為有向圖)初始化無向圖和有向圖(可用鄰接矩陣,也可用鄰接表),圖需要自己定義(頂點個數、邊個數,建議先在草稿紙上畫出圖,然後再輸入頂點和邊數)(2分)
執行截圖:
(2) 圖的遍歷:完成有向圖和無向圖的遍歷(深度和廣度優先遍歷)(4分)
執行截圖:
(3) 完成有向圖的拓撲排序,並輸出拓撲排序序列或者輸出該圖存在環(3分)
執行截圖:
輸入有環的即會出錯:
(4) 完成無向圖的最小生成樹(Prim演算法或Kruscal演算法均可),並輸出(3分)
這裡用到了Prim演算法:
執行截圖:
(5) 完成有向圖的單源最短路徑求解(迪傑斯特拉演算法)(3分)
執行截圖:
三. 實驗過程中遇到的問題和解決過程
- 問題:各種不能正常執行
- 問題解決方案:
不能正常執行那就是程式碼的問題,可以上百度去查詢,也可以上課本或者通過複習ppt來查詢原因,反正解決問題的方法很多,然後通過多次的除錯和修改,就能把程式的問題解決了。
## 其他(感悟、思考等)
最近沒啥事,總是沒有什麼時間去把課上教的程式碼去敲一遍,說白了就是懶的問題。原理都懂,但到了實際去程式設計的時候,非常的不熟練,還是要多多練習,積極主動寫程式碼!才能成為一名更加出色的程式設計師!
## 參考資料
- [《Java程式設計與資料結構教程(第二版)》](https://book.douban.com/subject/26851579/)
- [《Java程式設計與資料結構教程(第二版)》學習指導](http://www.cnblogs.com/rocedu/p/5182332.html)
- ...