我正在開發一個項目,幫助一個人找出巴士路線和巴士之間的轉換細節。我能夠找到路線,直到單個開關,但更多的是我無法做到這一點。請幫忙。如何找到最短的巴士路線時,有多個開關?
現在我的任務是如何從「Cantt」GO「SARAI」?使用相同的表格。
列Bus_Stop_Up的公交路線向上,Bus_Stop_Down的公交路線向下。
結果應該是像「Cantt(781) - >德瓦卡(764) - > Nehruplace(456) - >賴」 表的
詳細信息如下提及:
CREATE TABLE [dbo].[bustable]
(
[Sr] [int] NULL
[bus_no] [varchar](50) NULL,
[Bus_Stop_Up] [varchar](50) NULL,
[Bus_Stop_Up_Id] [int] NULL,
[Bus_Stop_Down] [varchar](50) NULL,
[Bus_Stop_Down_Id] [int] NULL,
)
表數據
||Sr | bus_no | Bus_Stop_Up | Bus_Stop_Down | Bus_Stop_Up_Id | Bus_Stop_Down_Id||
-------------------------------------------------------------------------------------------------------------
||1 | 781 | DWARKA | NEW DELHI | 1 | 1 ||
||2 | 781 | Airport | Cantt | 2 | 2 ||
||3 | 781 | Cantt | Airport | 3 | 3 ||
||4 | 781 | NEW DELHI | DWARKA | 4 | 4 ||
||5 | 764 | DWARKA | NEHRU PLACE | 1 | 1 ||
||6 | 764 | NEHRUPLACE | DWARKA | 2 | 2 ||
||7 | 456 | NEHRU PLACE | SARAI | 1 | 1 ||
||8 | 456 | SARAI | NEHRU PLACE | 2 | 2 ||
冷靜下來。不要大吼大叫。 –
看看這篇文章: http://stackoverflow.com/questions/7105879/graph-problems-connect-by-nocycle-prior-replacement-in-sql-server –
時間刷上你圖論。如果總停車次數不是很大:在內存中建立圖形,然後找到最短路徑。另請參見旅行商, – Richard