作者LPH66 ((short)(-15074))
看板C_and_CPP
標題Re: [問題] 考慮禁轉的最短路徑演算法...
時間Mon Mar 15 11:59:29 2010
※ 引述《archon (三腳貓的把戲)》之銘言:
: 一般常用的最短路徑演算法就是 Dijkstra Algorithm,
: 原理相信各位前輩都比我清楚,就不在此贅述了。
: 不過,在實際應用上,有時會遇到某些路徑的限制(譬如說道路的禁轉),
: 某些該 relax 的點被限制不能拜訪,就破壞了 Dijkstra 演算法的特性。
: 舉個例子來說:
: | | 假設 A->B->F 這是一個禁左轉的路口,
: ---C---D--- Dijkstra 是無法規劃出 A->B->C->D->E->B->F 這樣的結果。
: | |
: F---B---E---
: | |
: A
: 請問這樣子的問題,是被稱做什麼樣的問題呢?有關鍵字嗎?
: 或者是,有什麼演算法適用這種問題呢?
這樣的話我會把 B 拆成四個點
B1 B2 B3 B4
分別有四個方向的單向邊連進來
連出去則是可以轉的方向
所以就會變成
A→B1→E,C
E→B2→C,F
C→B3→F,A
F→B4→A,E
這樣就可以正確跑出 A→B1→C→D→E→B2→F 的路線
--
実琴:「
河野!你真的就這樣被
物質慾望給吸引過去了嗎?!」
亨:「只要
穿著女裝擺出親切的樣子,所有必要花費就能
全免,似乎一點都不壞啊。」
実琴:「難道你沒有
男人的尊嚴了嗎?!」
亨:(斷然道)「
沒有。在
節衣縮食且
生活吃緊的
學生面前,
沒有那種東西。」
--プリンセス・プリンセス 第二話
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.30.84
→ walker2009:agree 03/15 15:47
推 loveme00835:同意 03/15 15:51
→ psboy:看看簽名檔再看看1F跟2F.... (汗 03/16 13:38