亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? gongjiaoxinlu2.txt

?? 有一個(gè)公交查詢算法
?? TXT
字號:
這幾天在做一個(gè)公交乘車路線查詢應(yīng)用,遇到了很多人都遇到的一個(gè)問題,就是如何快速查詢出直達(dá)路線、轉(zhuǎn)乘路線,而不需要進(jìn)行復(fù)雜的算法編程。本人在參考了CSDN上很多牛人的經(jīng)驗(yàn)后,做出一個(gè)不用Dijkstra、弗洛伊德等算法,不需要圖或鄰接表等復(fù)雜數(shù)據(jù)結(jié)構(gòu),使用純SQL存儲過程的實(shí)現(xiàn)方法。
    首先說明,這個(gè)方法只能實(shí)現(xiàn)直達(dá)路線、一次轉(zhuǎn)乘的查詢,而且不考慮最短路徑等因素。如果轉(zhuǎn)乘次數(shù)超過1次,那就不得不考慮尋找其它更好的方法了。

思路:直達(dá)的情況很簡單,直接可以查詢出來;一次轉(zhuǎn)乘時(shí),把所有包含起始站點(diǎn)和到達(dá)站點(diǎn)的路線分揀到2張臨時(shí)表中,在這兩張表中查詢同時(shí)包含某個(gè)換乘站點(diǎn),并且該站點(diǎn)在起始線路中起始站點(diǎn)之后、到達(dá)線路中到達(dá)站點(diǎn)之前,這樣就能查詢出來了;>1次轉(zhuǎn)乘,查不出來:)
以下是實(shí)現(xiàn)方法:
1.用表tb_kmbusstations存放所有站點(diǎn)的集合
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[tb_kmbusstations]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[tb_kmbusstations]
GO
CREATE TABLE [dbo].[tb_kmbusstations] (
    [idx] [int] IDENTITY (1, 1) NOT NULL ,
    [station] [nvarchar] (200) COLLATE Chinese_PRC_CI_AS NULL 
) ON [PRIMARY]
GO

insert into tb_kmbusstations(station) select '12棵橡樹莊園小區(qū)'
union all select '阿拉辦事處'
union all select '阿拉中學(xué)'
union all select '阿依村'
union all select '安吉路口'
union all select '安康路'
union all select '安康路口(西園路口)'
union all select '安全新村'
union all select '八公里(貴昆路)'
union all select '巴士家園'
union all select '白龍村'
union all select '白龍路(昆理工大新迎區(qū))'
union all select '白龍路口(白云路)'
union all select '白龍寺(白龍路)'
union all select '白馬'
union all select '白沙河'
union all select '白沙路口(春雨路)'
union all select '白水塘'
union all select '白水塘上村'
union all select '白水塘中村'
union all select '白塔路(銀河證券)'
union all select '白塔路口(人民東路)'
union all select '白塔路口(人民東路口)'
union all select '白塔路口(世博大廈)'
union all select '白藥廠'
union all select '白云路(北京路口)'
union all select '白云路(東段)'
union all select '白云路口(北京路)'
union all select '白云路西口'
union all select '百匯商場'
union all select '班莊村'
union all select '班莊村口'
union all select '寶海公園'
.................  //數(shù)據(jù)較多(900多個(gè)站點(diǎn)),已省略,如有需要,請聯(lián)系我

2.用kmbusline存放所有公交線路
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[kmbusline]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)
drop table [dbo].[kmbusline]
GO
CREATE TABLE [dbo].[kmbusline] (
    [busname] [varchar] (100) COLLATE Chinese_PRC_CI_AS NOT NULL , --線路名稱
    [svctime] [char] (30) COLLATE Chinese_PRC_CI_AS NULL , --開行時(shí)間
    [stoe] [varchar] (200) COLLATE Chinese_PRC_CI_AS NULL , --起始站/終到站
    [line] [varchar] (4000) COLLATE Chinese_PRC_CI_AS NULL  --線路
) ON [PRIMARY]
GO

insert into kmbusline(busname,line) 
select '7路去程','潘家灣→昆師路口→昆師路口→潘家灣→市體育館(人民西路)→紅菱路(昆明肝病醫(yī)院)→茭菱路口(省現(xiàn)代婦產(chǎn)科醫(yī)院)→茭菱路(蕰莎堡)→西園路口(茭菱路)→豐寧小區(qū)→正大電子城→泰和園→普爾斯馬特會(huì)員店→黃土坡立交橋→西部客運(yùn)站→海源中路口(昆瑞路)→西山二中→三家巷→黑林鋪→昆瑞路→加工廠(昆瑞路)→昭宗路口(昆瑞路)→眠山(春雨路)→七公里(春雨路)→昆明制藥廠→昭宗大村(七四三四工廠)→[終到站]'
union all select '25路去程','江東花城→霖雨橋(霖雨路東)→霖雨橋(北京路口)→江東花園(江東花園北路)→江東商業(yè)街→北辰中路→北辰小區(qū)→金菊路口(金實(shí)路)→金實(shí)小區(qū)→云南茶葉市場→白云路(北京路口)→王旗營(萬宏路)→萬宏路(龍泉花園)→聯(lián)盟路(萬宏路口)→聯(lián)盟路口(穿金路口)→席子營(環(huán)城東路)→昆明理工大學(xué)(新迎區(qū))→延安醫(yī)院(環(huán)城東路)→董家灣→東站(環(huán)城東路)→民航路口(環(huán)城南路)→吳井橋→北京路(環(huán)城南路口)→昆明站(北京路)→[終到站]'
union all select '25路回程','昆明站(北京路)→北京路(環(huán)城南路口)→吳井橋→民航路口(環(huán)城南路)→東站(環(huán)城東路)→董家灣→延安醫(yī)院(環(huán)城東路)→昆明理工大學(xué)(新迎區(qū))→席子營(環(huán)城東路)→聯(lián)盟路口(穿金路口)→聯(lián)盟路(萬宏路口)→萬宏路(龍泉花園)→王旗營(萬宏路)→金星東門→金江路→金星西門→金夏路(北京路口)→金實(shí)小區(qū)→金菊路口(金實(shí)路)→北辰小區(qū)→北辰中路→江東商業(yè)街→江東花園(江東花園北路)→霖雨橋(霖雨路東)→江東花城→[終到站]'
union all select '26路去程','黃土坡(昆瑞路)→云南財(cái)貿(mào)學(xué)院(西區(qū))(昆瑞路)→麻園→西園路口(工人醫(yī)院)(昆瑞路)→西站→建設(shè)路(師大附中)→百匯商場→小西門(東風(fēng)西路)→藝術(shù)劇院→護(hù)國橋(東風(fēng)廣場)→塘子巷→和平村(北京路)→北京路(環(huán)城南路口)→吳井橋→市第三人民醫(yī)院→吳井路(福景花園)→吳井路口(吳井路)→五里多村→關(guān)興路口(民航路)→云旅客運(yùn)站→關(guān)上(民航路)→[終到站]'

...................... 共282條線路,其余已省略

3.存儲過程
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[busSearch]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[busSearch]
GO

SET QUOTED_IDENTIFIER ON 
GO
SET ANSI_NULLS ON 
GO
ALTER proc busSearch
    @sta1 nvarchar(50), @sta2 nvarchar(50)
as
--所有包含起始站點(diǎn)的路線表
create table #tmp1(
    r_busname nvarchar(100),
    r_st char(30),
    r_stoe nvarchar(200),
    r_line nvarchar(1200)
)
--所有包含到達(dá)站點(diǎn)的路線表
create table #tmp2(
    r_busname nvarchar(100),
    r_st char(30),
    r_stoe nvarchar(200),
    r_line nvarchar(1200)
)

--查找結(jié)果
create table #result(
    r_bn1 nvarchar(100),
    r_st1 char(30),
    r_stoe1 nvarchar(200),
    r_line1 nvarchar(1200),
    r_station nvarchar(100), --轉(zhuǎn)乘站點(diǎn)
    r_bn2 nvarchar(100),
    r_st2 char(30),
    r_stoe2 nvarchar(200),
    r_line2 nvarchar(1200)
)

set @sta1=@sta1+'→'
set @sta2=@sta2+'→'
--直達(dá):
insert into #result(r_bn1,r_st1,r_stoe1,r_line1) select * from kmbusline a
    where charindex(@sta1,a.line)>0 and  charindex(@sta1,a.line)<charindex(@sta2,a.line)

if @@rowcount<=0 begin
--轉(zhuǎn)乘:
    insert into #tmp1(r_busname,r_st,r_stoe,r_line)
    select a.busname,a.svctime,a.stoe,rtrim(a.line) from kmbusline a
        where charindex(@sta1,a.line)>0 --起始線路

    insert into #tmp2(r_busname,r_st,r_stoe,r_line)
    select a.busname,a.svctime,a.stoe,rtrim(a.line) from kmbusline a
        where charindex(@sta2,a.line)>0 --到達(dá)線路

    insert into #result
    select a.*, c.station, b.*
        from #tmp1 a, #tmp2 b, tb_kmbusstations c
        where c.station+'→'<>@sta1 and c.station+'→'<>@sta2
        and charindex(c.station+'→',a.r_line)>0 and charindex(c.station+'→',b.r_line)>0
        and charindex(@sta1,a.r_line)<charindex(c.station+'→',a.r_line)
        and charindex(@sta2,b.r_line)>charindex(c.station+'→',b.r_line)
end
select * from #result

drop table #result
drop table #tmp1
drop table #tmp2

GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO

--直達(dá):
exec busSearch '公交北市區(qū)車場',  '東風(fēng)廣場'

--轉(zhuǎn)乘:
exec busSearch '公交北市區(qū)車場', '西壩' 


在站點(diǎn)為928個(gè)、公交路線為282條時(shí),測試轉(zhuǎn)乘查詢時(shí)間一般不超過一秒,可得到30條換乘線路。

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产成人在线网站| xf在线a精品一区二区视频网站| 天堂va蜜桃一区二区三区 | 精品亚洲国内自在自线福利| 亚洲成人动漫一区| 日本va欧美va精品发布| 91美女在线视频| 亚洲一区二区高清| 国产一区91精品张津瑜| 欧美揉bbbbb揉bbbbb| 国产精品久久久久桃色tv| 国产真实乱对白精彩久久| 欧美精品久久一区| 亚洲国产中文字幕| 日本韩国欧美三级| 一区二区在线看| 欧美日韩在线一区二区| 国产日韩欧美激情| 亚洲国产精品精华液网站| 亚洲国产综合人成综合网站| 一区二区三区欧美亚洲| 黄一区二区三区| 一本一道波多野结衣一区二区 | 丁香啪啪综合成人亚洲小说| 中文一区在线播放| 色一情一乱一乱一91av| 婷婷中文字幕一区三区| ww亚洲ww在线观看国产| jizzjizzjizz欧美| 亚洲成人av在线电影| 精品免费日韩av| 91视频91自| 男人的天堂亚洲一区| 国产偷v国产偷v亚洲高清| 在线亚洲免费视频| 国产剧情一区在线| 亚洲国产日韩a在线播放| 久久综合狠狠综合久久综合88| 99九九99九九九视频精品| 亚洲成人一区二区在线观看| 国产日产欧美一区| 7878成人国产在线观看| 成人理论电影网| 蜜臀精品一区二区三区在线观看| 国产精品国产精品国产专区不片| 欧美男生操女生| 91网站在线观看视频| 六月婷婷色综合| 亚洲国产欧美在线人成| 国产日韩欧美精品一区| 欧美一级在线免费| 91高清在线观看| 成人伦理片在线| 韩国女主播成人在线| 午夜视黄欧洲亚洲| 亚洲欧美另类久久久精品| 精品久久久久久综合日本欧美| 欧美亚洲日本一区| www.日韩大片| 国产成人免费在线视频| 免费高清成人在线| 天天av天天翘天天综合网色鬼国产| 亚洲欧美中日韩| 久久精品亚洲国产奇米99| 欧美精品自拍偷拍动漫精品| 色综合久久综合| 99久久精品国产毛片| 国产真实乱对白精彩久久| 免费看精品久久片| 日韩在线卡一卡二| 婷婷综合另类小说色区| 亚洲第一福利一区| 亚洲成人三级小说| 性欧美疯狂xxxxbbbb| 亚洲愉拍自拍另类高清精品| 亚洲免费资源在线播放| 国产精品久久久久久久久图文区 | 一区二区三区免费网站| 国产精品免费久久| 亚洲国产精品成人综合| 国产亚洲综合在线| 国产午夜三级一区二区三| 2023国产精华国产精品| 久久亚洲一级片| 久久精品免费在线观看| 国产视频视频一区| 欧美国产一区二区| 国产精品福利影院| 亚洲视频免费在线| 洋洋av久久久久久久一区| 亚洲第一福利视频在线| 视频一区中文字幕| 琪琪一区二区三区| 久久综合综合久久综合| 激情成人综合网| 成人性生交大合| 色偷偷久久一区二区三区| 一本色道a无线码一区v| 91福利资源站| 91麻豆精品国产91久久久资源速度 | 国产乱人伦偷精品视频免下载| 国产在线不卡一卡二卡三卡四卡| 国产一区二三区| av亚洲精华国产精华精华| 99国产精品一区| 欧美欧美午夜aⅴ在线观看| 日韩欧美亚洲国产另类| 国产欧美日本一区视频| 亚洲人一二三区| 免费成人av在线| 丁香激情综合五月| 欧美伊人久久大香线蕉综合69| 69av一区二区三区| 久久久精品蜜桃| 亚洲一区日韩精品中文字幕| 久久精品国产第一区二区三区| 国产麻豆日韩欧美久久| 日本韩国精品在线| 日韩欧美综合在线| 国产精品热久久久久夜色精品三区 | 日韩欧美国产小视频| 国产日韩欧美一区二区三区乱码 | 亚洲高清一区二区三区| 黄色日韩网站视频| 色综合久久天天| 久久综合色播五月| 亚洲精品中文在线影院| 看国产成人h片视频| 91亚洲资源网| 精品国产a毛片| 一级女性全黄久久生活片免费| 激情久久五月天| 欧美三级日韩三级| 国产日韩欧美高清| 蜜臀精品久久久久久蜜臀| 一本到不卡免费一区二区| 精品欧美一区二区在线观看| 亚洲一区免费观看| 成人网在线免费视频| 日韩午夜小视频| 亚洲国产成人tv| 99国产精品久| 国产女人水真多18毛片18精品视频| 日韩二区三区四区| 色素色在线综合| 中文字幕亚洲在| 成人一道本在线| xvideos.蜜桃一区二区| 日本欧美一区二区| 欧美日韩一级视频| 一区二区三区久久| proumb性欧美在线观看| 精品99999| 麻豆国产精品一区二区三区| 欧美视频在线一区| 亚洲欧美另类小说| av中文字幕不卡| 国产欧美日韩精品一区| 国产在线国偷精品产拍免费yy| 欧美一区二区三区啪啪| 亚洲国产精品久久艾草纯爱| 在线免费观看日韩欧美| 亚洲欧洲三级电影| 国产成人久久精品77777最新版本 国产成人鲁色资源国产91色综 | 92国产精品观看| 欧美激情中文字幕一区二区| 久久99精品久久只有精品| 91精品在线一区二区| 午夜精品一区二区三区电影天堂| 欧洲国内综合视频| 亚洲精品午夜久久久| 91在线播放网址| 亚洲精品国产a| 欧美系列一区二区| 亚洲自拍偷拍九九九| 欧美亚一区二区| 丝袜亚洲另类欧美综合| 69堂亚洲精品首页| 美女诱惑一区二区| 26uuu亚洲综合色| 国产成人h网站| 日韩美女视频一区二区| 欧美在线视频不卡| 丝袜国产日韩另类美女| 日韩精品一区在线| 国产一区二区伦理片| 日本一二三四高清不卡| 一本久久综合亚洲鲁鲁五月天| 亚洲一区二区3| 91精品国产一区二区三区香蕉| 日韩av一级电影| 日韩一级高清毛片| 国产成人一区二区精品非洲| 国产精品美女久久久久高潮| 94-欧美-setu| 奇米色一区二区三区四区| 精品第一国产综合精品aⅴ| 成人性色生活片| 亚洲国产精品久久不卡毛片| 日韩欧美国产综合一区|