往googler的路上day18

Han-Ru Chen
Feb 24, 2021

--

今天是開始這個計畫以來,練程式練最少的一天了,但是我搞懂了何謂

"Dijkstra演算法",並將它實作出來且寫對了題目。

以下附上目前筆記:

1.圖形資料結構是由
(1) 點 (2) 邊 所組成。

2.圖形資料結構廣泛應用於程式的實作

3.許多功能的實作都可以轉換成圖形資料結構

4.EX: 使用地圖搜尋最短路徑,將地點轉換成圖形資料結構中的點,地點與地點間的距離轉換成邊的權重

5.使用最短路徑演算法就可以找出最短路徑

6.無向圖vs有向圖 //請搭配以下網址所含圖形觀看

參考資料: https://sites.google.com/site/zsgititit/home/jin-jiec-cheng-shi-she-ji-2/tu-xing-zui-duan-lu-jing
(1)兩者差在方向,想像你用陣列儲存兩者資料的差別
(2)是的,無向圖的資料是對稱的,有向圖則像是經過高斯消去法一樣不對稱// upper triangle 的感覺

7.找出圖形中的最短路徑演算法,常見的有三種,分別是Dijkstra演算法、BellmanFord演算法、Floyd演算法
很像BFS的感覺,即每個點的結果都是最佳解,所以每個點都會是對的。
之所以可以這樣選擇是因為,你要到這個點的話,經過其他點會大於他…..//超強的啦
(1)Dijkstra演算法是一種(Greedy)的演算法策略 // 我自己認為更像動態規劃
‘1’ 最短路徑決定了就不能更改
‘2’不能用於有負環的情形 //所謂的負環就是所有邊形成循環後的加總為負

附上程式碼

今天花了很多時間再研究資料創新應用競賽的資料,很多東西都是我不會的,但是過程中比起問"我是否能夠完成這個目標",更多的是我問了自己

"如何達成這個目標",所以很累但是我會繼續努力的。

--

--

Han-Ru Chen
Han-Ru Chen

Written by Han-Ru Chen

如果能夠重新投胎選擇任一人的人生,我想選擇我自己。 \ linktr: https://linktr.ee/future_outlier\ ted talk: https://youtu.be/aV-Pvb-qmC0?si=lvCFpZde5erQH-wZ \

No responses yet