言情小说吧_好看的小说免费阅读_红袖添香 - 阅文集团旗下网站

首頁 短篇

編程代碼之戰(zhàn)

第十四章 最短路徑

編程代碼之戰(zhàn) 程序小猿 488 2022-09-07 15:05:18

  “唰唰!”

  牛仔從大樹上面跳下來。

  然后,他看見了倒在地上,奄奄一息的小機(jī)器人羅比。

  “哥們,發(fā)生啥事了?”

  楊成趕緊爬起來,毫發(fā)無損,看了看小機(jī)器人,臉上很是詫異。

  就在這時(shí),羅比開口了,它的聲音很微弱。

  “主人...”

  “羅比的尋路邏輯被破壞了...”

  “如果想讓羅比帶你們回家...”

  “請先編寫代碼修復(fù)...”

  楊成聽到這里,已經(jīng)有了些眉目。

  這個(gè)關(guān)卡敢情是考查尋路算法??!

  對于要找到地圖中,兩個(gè)點(diǎn)之間的路徑,有一種簡單而粗暴的做法。

  從出發(fā)點(diǎn)使用深度優(yōu)先遍歷,如果達(dá)到了終點(diǎn),就終止并返回路徑。

  它的實(shí)現(xiàn)方式很簡單,但是有兩點(diǎn)不足:

  1.效率低下

  2.它找到的路徑不一定是最短路徑,很有可能會繞遠(yuǎn)路。

  第二點(diǎn)尤其糟糕,繞遠(yuǎn)路白費(fèi)力氣吶...

  所以,這個(gè)問題應(yīng)該是尋找圖中兩點(diǎn)間的最短路徑。

  楊成很快想到了,有一種經(jīng)典的算法:

  迪杰斯特拉最短路徑算法。

  還有另一種簡潔的解法,廣度優(yōu)先遍歷。

  它們都很合適。

  但從效率上來說,還是有細(xì)微的差別。

  迪杰斯特拉算法經(jīng)過優(yōu)化后的時(shí)間復(fù)雜度是:

  O(N*logN)

  廣度優(yōu)先遍歷是O(N)。

  然后空間效率,在一般情況下,迪杰斯特拉需要的額外空間更多。

  (Breadth-First Search)

  就是你了,BFS!

  它足夠簡單,實(shí)現(xiàn)方便,而且效率也不會很低...

按 “鍵盤左鍵←” 返回上一章  按 “鍵盤右鍵→” 進(jìn)入下一章  按 “空格鍵” 向下滾動
目錄
目錄
設(shè)置
設(shè)置
書架
加入書架
書頁
返回書頁
指南
主站蜘蛛池模板: 临西县| 桦川县| 永州市| 浠水县| 含山县| 新津县| 上蔡县| 城市| 云梦县| 武乡县| 任丘市| 西平县| 越西县| 塔河县| 称多县| 许昌市| 砚山县| 阿克苏市| 包头市| 永城市| 兰坪| 淳化县| 潞城市| 德令哈市| 襄垣县| 垦利县| 阜城县| 定襄县| 高唐县| 安化县| 上思县| 永新县| 甘泉县| 宁德市| 四川省| 什邡市| 富源县| 华蓥市| 紫阳县| 巫溪县| 永仁县|