两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

公交線路搜索方法和裝置制造方法

文檔序號(hào):6627402閱讀:124來(lái)源:國(guó)知局
公交線路搜索方法和裝置制造方法
【專(zhuān)利摘要】一種公交線路搜索方法,包括:獲取起點(diǎn)公交線路和終點(diǎn)公交線路,并以廣度優(yōu)先原則搜索與起點(diǎn)公交線路連通的公交線路的過(guò)程、以及以廣度優(yōu)先原則搜索與終點(diǎn)公交線路連通的公交線路的過(guò)程輪番進(jìn)行,每當(dāng)與起點(diǎn)公交線路連通的公交線路以及與終點(diǎn)公交線路連通的公交線路之間有公共線路,則獲取起點(diǎn)公交線路至公共線路的最短連通路徑以及終點(diǎn)公交線路至公共線路的最短連通路徑,根據(jù)該兩最短連通路徑合成從起點(diǎn)至終點(diǎn)的乘坐路徑;由于上述方法從兩個(gè)方向上按照廣度優(yōu)先原則搜索與起點(diǎn)公交線路和終點(diǎn)公交線路連通的公交線路,可大大減少搜索到從起點(diǎn)至終點(diǎn)的乘坐路徑所耗費(fèi)的計(jì)算資源以及搜索所需的時(shí)間。此外,還提供一種公交搜索裝置。
【專(zhuān)利說(shuō)明】公交線路搜索方法和裝置

【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及計(jì)算機(jī)【技術(shù)領(lǐng)域】,特別是涉及一種公交線路搜索方法。

【背景技術(shù)】
[0002] 獲取用戶(hù)輸入的起點(diǎn)和終點(diǎn)、提供從起點(diǎn)至終點(diǎn)的公交乘坐方案的公交查詢(xún)服務(wù) 是互聯(lián)網(wǎng)上人們經(jīng)常使用的一項(xiàng)服務(wù)。
[0003] -個(gè)城市的公交線路往往是錯(cuò)綜復(fù)雜的,而用戶(hù)輸入的起點(diǎn)和終點(diǎn)附近可能都有 多個(gè)公交站點(diǎn)(分別記為起點(diǎn)公交站點(diǎn)和終點(diǎn)公交站點(diǎn)),而且每一個(gè)起點(diǎn)公交站點(diǎn)內(nèi)可 能??慷鄺l公交線路(記為起點(diǎn)公交線路),每一個(gè)終點(diǎn)公交站點(diǎn)內(nèi)也可能停靠多條公交 線路(記為終點(diǎn)公交線路);比較復(fù)雜的是,起點(diǎn)公交線路和終點(diǎn)公交線路可能不包括相同 的公交線路,從而需要查詢(xún)搭乘哪一趟起點(diǎn)公交線路并換乘哪一趟終點(diǎn)公交線路從而從起 點(diǎn)抵達(dá)終點(diǎn);更為復(fù)雜的是,起點(diǎn)公交線路與終點(diǎn)公交線路之間不能直接換乘,而是在起點(diǎn) 公交線路與終點(diǎn)公交線路之間還需要搭乘其它公交線路,而搭乘其它公交線路的方案又包 括多種。
[0004] 因此,查詢(xún)起點(diǎn)至終點(diǎn)的公交乘坐方案需要耗費(fèi)大量的時(shí)間以及計(jì)算資源。


【發(fā)明內(nèi)容】

[0005] 基于此,有必要提供一種可減小時(shí)間及計(jì)算資源耗費(fèi)的公交線路查詢(xún)方法和裝 置。
[0006] -種公交線路搜索方法,包括以下步驟:
[0007] 獲取輸入的起點(diǎn)和終點(diǎn)的位置信息;
[0008] 搜索所述起點(diǎn)附近預(yù)設(shè)范圍內(nèi)??康钠瘘c(diǎn)公交線路和所述終點(diǎn)預(yù)設(shè)范圍內(nèi)停靠 的終點(diǎn)公交線路;
[0009] 判斷所述起點(diǎn)公交線路和所述終點(diǎn)公交線路之間是否有公共線路,若否,以廣度 優(yōu)先原則輪番搜索與所述起點(diǎn)公交線路連通的公交線路以及與所述終點(diǎn)公交線路連通的 公交線路,判斷與所述起點(diǎn)公交線路連通的公交線路以及與所述終點(diǎn)公交線路連通的公交 線路之間是否有公共線路;
[0010] 每當(dāng)與所述起點(diǎn)公交線路連通的公交線路以及與所述終點(diǎn)公交線路連通的公交 線路之間有公共線路,則獲取起點(diǎn)公交線路至各條公共線路的最短連通路徑,并獲取終點(diǎn) 公交線路至各條公共線路的最短連通路徑;
[0011] 根據(jù)起點(diǎn)公交線路至各條公共線路的最短連通路徑以及終點(diǎn)公交線路至各條公 共線路的最短連通路徑,合成從所述起點(diǎn)至所述終點(diǎn)的各條乘坐路徑,每一條乘坐路徑中 各條公交線路按照需要的乘坐順序依次排列。
[0012] 一種公交線路搜索裝置,包括:
[0013] 輸入獲取模塊,用于獲取輸入的起點(diǎn)和終點(diǎn)的位置信息;
[0014] 起終公交線路搜索模塊,用于搜索所述起點(diǎn)附近預(yù)設(shè)范圍內(nèi)停靠的起點(diǎn)公交線路 和所述終點(diǎn)預(yù)設(shè)范圍內(nèi)??康慕K點(diǎn)公交線路;
[0015] 公共線路搜索模塊,用于判斷所述起點(diǎn)公交線路和所述終點(diǎn)公交線路之間是否有 公共線路,若否,以廣度優(yōu)先原則輪番搜索與所述起點(diǎn)公交線路連通的公交線路以及與所 述終點(diǎn)公交線路連通的公交線路,判斷與所述起點(diǎn)公交線路連通的公交線路以及與所述終 點(diǎn)公交線路連通的公交線路之間是否有公共線路;
[0016] 可行線路獲取模塊,用于每當(dāng)與所述起點(diǎn)公交線路連通的公交線路以及與所述終 點(diǎn)公交線路連通的公交線路之間有公共線路,則獲取起點(diǎn)公交線路至各條公共線路的最短 連通路徑,并獲取終點(diǎn)公交線路至各條公共線路的最短連通路徑;
[0017] 乘坐路徑合成模塊,用于根據(jù)起點(diǎn)公交線路至各條公共線路的最短連通路徑以及 終點(diǎn)公交線路至各條公共線路的最短連通路徑,合成從所述起點(diǎn)至所述終點(diǎn)的各條乘坐路 徑,每一條乘坐路徑中各條公交線路按照需要的乘坐順序依次排列。
[0018] 上述公交線路搜索方法和裝置,獲取起點(diǎn)對(duì)應(yīng)的起點(diǎn)公交線路和終點(diǎn)對(duì)應(yīng)的終點(diǎn) 公交線路,并以廣度優(yōu)先原則搜索與起點(diǎn)公交線路連通的公交線路的過(guò)程、以及以廣度優(yōu) 先原則搜索與終點(diǎn)公交線路連通的公交線路的過(guò)程輪番進(jìn)行,每當(dāng)與起點(diǎn)公交線路連通的 公交線路以及與終點(diǎn)公交線路連通的公交線路之間有公共線路,則獲取起點(diǎn)公交線路至公 共線路的最短連通路徑以及終點(diǎn)公交線路至公共線路的最短連通路徑,根據(jù)該兩最短連通 路徑合成從起點(diǎn)至終點(diǎn)的乘坐路徑;由于上述方法和裝置從兩個(gè)方向上按照廣度優(yōu)先原則 搜索與起點(diǎn)公交線路和終點(diǎn)公交線路連通的公交線路,實(shí)時(shí)判斷兩個(gè)方向上搜索到的公交 線路是否有公共線路,并獲取包含公共線路的從起點(diǎn)公交線路至終點(diǎn)公交線路的最短連通 路徑為從起點(diǎn)至終點(diǎn)的乘坐路徑,因此可大大減少搜索到從起點(diǎn)至終點(diǎn)的乘坐路徑所耗費(fèi) 的計(jì)算資源以及搜索所需的時(shí)間。

【專(zhuān)利附圖】

【附圖說(shuō)明】
[0019] 圖1為一個(gè)實(shí)施例中運(yùn)行本發(fā)明的公交線路搜索方法的電子設(shè)備100的部分結(jié)構(gòu) 框圖;
[0020] 圖2為一個(gè)實(shí)施例中的公交線路搜索方法的流程示意圖;
[0021] 圖3A為一個(gè)實(shí)施例中根據(jù)預(yù)先存儲(chǔ)的公交數(shù)據(jù)生成并存儲(chǔ)線路連通圖以及線路 連通站點(diǎn)信息的步驟的流程示意圖;
[0022] 圖3B為一個(gè)實(shí)施例中的線路連通圖的圖形化表示;
[0023] 圖4為一個(gè)實(shí)施例中公共線路搜索步驟的流程示意圖;
[0024] 圖5為另一實(shí)施例中公共線路搜索步驟的流程示意圖;
[0025] 圖6A、6B和6C為一個(gè)實(shí)施例中的公交線路搜索示意圖;
[0026] 圖7A為一個(gè)實(shí)施例中過(guò)濾乘坐路徑的過(guò)程的流程示意圖;
[0027] 圖7B為一個(gè)實(shí)施例中獲取一公交線路的公交線路信息的過(guò)程的流程示意圖;
[0028] 圖8為一個(gè)實(shí)施例中的公交線路搜索裝置的結(jié)構(gòu)示意圖;
[0029] 圖9為一個(gè)實(shí)施例中的公交線路搜索裝置的結(jié)構(gòu)示意圖;
[0030] 圖10為一個(gè)實(shí)施例中公共線路搜索模塊的結(jié)構(gòu)示意圖;
[0031] 圖11為一個(gè)實(shí)施例中的公交線路搜索裝置的結(jié)構(gòu)示意圖;
[0032] 圖12為一個(gè)實(shí)施例中的公交線路搜索裝置的結(jié)構(gòu)示意圖。

【具體實(shí)施方式】
[0033] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì) 本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說(shuō)明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并 不用于限定本發(fā)明。
[0034] 圖1為一個(gè)實(shí)施例中運(yùn)行本發(fā)明的公交線路搜索方法的電子設(shè)備100的部分結(jié)構(gòu) 框圖。該電子設(shè)備100可以是手機(jī)、平板電腦、PDA (Personal Digital Assistant,個(gè)人數(shù) 字助理)、車(chē)載電腦等任意一種可以進(jìn)行公交線路搜索的電子設(shè)備。如圖1所示,在一個(gè)實(shí) 施例中,該電子設(shè)備100包括處理器102、存儲(chǔ)器104、輸入設(shè)備106、顯示屏幕108和通信模 塊110等部件。其中,存儲(chǔ)器104可用于存儲(chǔ)軟件程序以及模塊,處理器102通過(guò)運(yùn)行存儲(chǔ) 在存儲(chǔ)器104中的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理;輸入設(shè)備106 可用于接收輸入的數(shù)字、字符、聲音、圖形或者其他信息,以及產(chǎn)生相應(yīng)的輸入信號(hào);顯示屏 幕108可用于根據(jù)處理器102的控制指令顯示可視化元素;而通信模塊110可用于實(shí)現(xiàn)與 網(wǎng)絡(luò)之間的通信。本領(lǐng)域技術(shù)人員可以理解,圖1中示出的結(jié)構(gòu),僅僅是與本發(fā)明方案相關(guān) 的部分結(jié)構(gòu)的框圖,并不構(gòu)成對(duì)本發(fā)明方案所應(yīng)用于其上的電子設(shè)備100的限定,具體的 電子設(shè)備100可以包括比圖示中更多或更少的部件,或者組合某些部件,或者不同的部件 布置。
[0035] 如圖2所示,在一個(gè)實(shí)施例中,一種公交線路搜索方法,包括以下步驟:
[0036] 步驟S202,獲取輸入的起點(diǎn)和終點(diǎn)的位置信息。
[0037] 在一個(gè)實(shí)施例中,起點(diǎn)和終點(diǎn)的位置信息可以是地理位置名稱(chēng)、或地理位置經(jīng)緯 度等。地理位置名稱(chēng)可為地理區(qū)域名稱(chēng)或地理位置點(diǎn)名稱(chēng)。地理區(qū)域名稱(chēng)包括小區(qū)名稱(chēng)、 公共場(chǎng)所名稱(chēng)和道路名稱(chēng)等;地理位置點(diǎn)名稱(chēng)包括公交站點(diǎn)名稱(chēng)和建筑物名稱(chēng)等。
[0038] 在一個(gè)實(shí)施例中,可獲取用戶(hù)在電子地圖上標(biāo)記的起點(diǎn)和終點(diǎn)起點(diǎn)和終點(diǎn),并獲 取起點(diǎn)和終點(diǎn)對(duì)應(yīng)的地理位置經(jīng)緯度。
[0039] 在一個(gè)實(shí)施例中,在步驟S202之后以及步驟S204之前,還可獲取當(dāng)前所在城市, 可判斷本地存儲(chǔ)中是否存儲(chǔ)有當(dāng)前所在城市的公交數(shù)據(jù),若是,則進(jìn)入步驟S204,若否,則 結(jié)束。本地存儲(chǔ)指的是本地的存儲(chǔ)設(shè)備或存儲(chǔ)介質(zhì),包括本地的硬盤(pán)、磁盤(pán)等。其中的公交 數(shù)據(jù)包括公交站點(diǎn)信息以及公交線路信息。在一個(gè)實(shí)施例中,公交站點(diǎn)信息包括公交站點(diǎn) 序列號(hào)、公交站點(diǎn)名稱(chēng)、公交站點(diǎn)內(nèi)??康墓痪€路的序列號(hào)以及公交站點(diǎn)經(jīng)緯度等;公交 線路信息包括公交線路序列號(hào)、公交線路所??康陌凑胀?宽樞蚺帕械墓徽军c(diǎn)序列號(hào)、 所??康母飨噜弮蓚€(gè)公交站點(diǎn)之間的行駛時(shí)長(zhǎng)等。在一個(gè)實(shí)施例中,步驟S204?S210可 基于上述的公交數(shù)據(jù)進(jìn)行。
[0040] 步驟S204,搜索起點(diǎn)附近預(yù)設(shè)范圍內(nèi)??康钠瘘c(diǎn)公交線路和終點(diǎn)預(yù)設(shè)范圍內(nèi)停靠 的終點(diǎn)公交線路。
[0041] 在一個(gè)實(shí)施例中,步驟S204包括以下步驟:搜索起點(diǎn)附近預(yù)設(shè)范圍內(nèi)的起點(diǎn)公交 站點(diǎn)和終點(diǎn)附近預(yù)設(shè)范圍內(nèi)的終點(diǎn)公交站點(diǎn);查詢(xún)經(jīng)過(guò)起點(diǎn)公交站點(diǎn)的起點(diǎn)公交線路和經(jīng) 過(guò)終點(diǎn)公交站點(diǎn)的終點(diǎn)公交線路。
[0042] 在一個(gè)實(shí)施例中,可分別將起點(diǎn)和終點(diǎn)的地理位置名稱(chēng)與預(yù)先存儲(chǔ)的公交站點(diǎn)名 稱(chēng)進(jìn)行匹配,獲取匹配的公交站點(diǎn)名稱(chēng)作為起點(diǎn)公交站點(diǎn)和終點(diǎn)公交站點(diǎn)。
[0043] 在另一個(gè)實(shí)施例中,可查詢(xún)起點(diǎn)和終點(diǎn)的地理位置名稱(chēng)對(duì)應(yīng)的經(jīng)緯度,根據(jù)起點(diǎn) 和終點(diǎn)對(duì)應(yīng)的經(jīng)緯度與預(yù)先存儲(chǔ)的公交站點(diǎn)的經(jīng)緯度計(jì)算預(yù)先存儲(chǔ)的公交站點(diǎn)和與起點(diǎn) 和終點(diǎn)的距離,獲取與起點(diǎn)的距離在預(yù)設(shè)范圍內(nèi)的公交站點(diǎn)作為起點(diǎn)公交站點(diǎn),并獲取與 終點(diǎn)的距離在預(yù)設(shè)范圍內(nèi)的公交站點(diǎn)作為終點(diǎn)公交站點(diǎn)。
[0044] 進(jìn)一步的,可在預(yù)先存儲(chǔ)公交站點(diǎn)序列號(hào)和公交站點(diǎn)內(nèi)??康墓痪€路的序列號(hào) 的對(duì)應(yīng)關(guān)系中查詢(xún)經(jīng)過(guò)起點(diǎn)公交站點(diǎn)的起點(diǎn)公交線路和經(jīng)過(guò)終點(diǎn)公交站點(diǎn)的終點(diǎn)公交線 路。
[0045] 步驟S206,判斷起點(diǎn)公交線路和終點(diǎn)公交線路之間是否有公共線路,若否,以廣度 優(yōu)先原則輪番搜索與起點(diǎn)公交線路連通的公交線路以及與終點(diǎn)公交線路連通的公交線路, 判斷與起點(diǎn)公交線路連通的公交線路以及與終點(diǎn)公交線路連通的公交線路之間是否有公 共線路。
[0046] 其中,與一公交線路連通的公交線路為與該公交線路直接連通的公交線路或通過(guò) 其它公交線路與該公交線路間接連通的公交線路。若兩條公交線路??康墓徽军c(diǎn)中包括 相同的公交站點(diǎn)或距離小于閾值的公交站點(diǎn),則稱(chēng)該兩條公交線路直接連通。而若公交線 路L A與公交線路LB直接連通、公交線路LB與公交線路L。直接連通、公交線路L A與公交線 路Lc不直接連通,則說(shuō)明公交線路LA與公交線路L c間接連通。若兩條公交線路直接連通, 則稱(chēng)該兩條公交線路之間的連通距離為1 ;若兩條公交線路通過(guò)至少一條公交線路間接連 通,則稱(chēng)該兩條公交線路之間的連通距離為2 ;依次類(lèi)推,若兩條公交線路通過(guò)至少η條公 交線路間接連通,則該兩條公交線路的連通距離為η+1。而公交線路至自身的連通距離可認(rèn) 為是〇。
[0047] 以廣度優(yōu)先原則輪番搜索與起點(diǎn)公交線路連通的公交線路以及與終點(diǎn)公交線路 連通的公交線路表示:總是先搜索與起點(diǎn)公交線路和終點(diǎn)公交線路的連通距離為i的所 有公交線路,然后再搜索與起點(diǎn)公交線路和終點(diǎn)公交線路的連通距離為i+ι的所有公交線 路。其中,i僅作為標(biāo)記連通距離長(zhǎng)度符號(hào),不用于限定本發(fā)明。
[0048] 在一個(gè)實(shí)施例中,在步驟S206之前,可根據(jù)預(yù)先存儲(chǔ)的公交數(shù)據(jù)生成并存儲(chǔ)線路 連通圖以及線路連通站點(diǎn)信息;如圖3A所示,在一個(gè)實(shí)施例中,該步驟包括以下步驟:
[0049] 步驟S302,生成與預(yù)先存儲(chǔ)的公交線路對(duì)應(yīng)的節(jié)點(diǎn)作為線路連通圖的節(jié)點(diǎn),并獲 取預(yù)先存儲(chǔ)的公交線路中直接連通的公交線路。
[0050] 步驟S304,根據(jù)直接連通的公交線路生成連接節(jié)點(diǎn)的邊,若兩條公交線路直接連 通,則生成連接該兩條公交線路對(duì)應(yīng)的節(jié)點(diǎn)的邊。
[0051] 步驟S306,存儲(chǔ)線路連通圖的節(jié)點(diǎn)的集合以及連接節(jié)點(diǎn)的邊的集合。
[0052] 步驟S308,判斷直接連通的兩條公交線路中是否包括相同的公交站點(diǎn),若是,則執(zhí) 行步驟S310,若否,則執(zhí)行步驟S312。
[0053] 步驟S310,存儲(chǔ)相同的公交站點(diǎn)為對(duì)應(yīng)的兩條公交線路的連通站點(diǎn)。
[0054] 可存儲(chǔ)兩條直接連通的公交線路的標(biāo)識(shí)與其所包含的相同的公交站點(diǎn)的標(biāo)識(shí)之 間的對(duì)應(yīng)關(guān)系。
[0055] 步驟S312,獲取直接連通的兩條公交線路中包括的距離最近的兩個(gè)公交站點(diǎn),存 儲(chǔ)距離最近的兩個(gè)公交站點(diǎn)為對(duì)應(yīng)的兩條公交線路的連通站點(diǎn)。
[0056] 若兩條直接連通的公交線路對(duì)應(yīng)的連通站點(diǎn)為距離小于閾值的兩個(gè)公交站點(diǎn),則 說(shuō)明從其中一條公交線路換乘至另一條公交線路,需要從其中一個(gè)公交站點(diǎn)下車(chē),并抵達(dá) (例如步行)至另一公交站點(diǎn),從該另一公交站點(diǎn)換乘。
[0057] 可將兩條直接連通的公交線路包括的距離最近的兩個(gè)公交站點(diǎn)的標(biāo)識(shí)組成數(shù)據(jù) 對(duì),存儲(chǔ)該兩條直接連通的公交線路的標(biāo)識(shí)與該數(shù)據(jù)對(duì)之間的對(duì)應(yīng)關(guān)系。
[0058] 例如,可如下表1所示存儲(chǔ)兩條連通的公交線路與它們之間的連通站點(diǎn)的對(duì)應(yīng)關(guān) 系。其中,若兩條直接連通的公交線路包括多個(gè)相同的公交站點(diǎn),可將該多個(gè)公交站點(diǎn)都存 儲(chǔ)為該兩條公交線路對(duì)應(yīng)的連通站點(diǎn),公交站點(diǎn)之間用逗號(hào)隔開(kāi)。表1中的數(shù)據(jù)表示:公交 線路U與L 2的包括兩個(gè)相同的公交站點(diǎn)Za和Zd ;而公交線路L3與L4不包括相同的公交站 點(diǎn),且其包括的距離小于閾值的公交站點(diǎn)且Z b和Z。為其中距離最近的兩個(gè)公交站點(diǎn)。
[0059] 表 1
[0060]

【權(quán)利要求】
1. 一種公交線路搜索方法,包括以下步驟: 獲取輸入的起點(diǎn)和終點(diǎn)的位置信息; 搜索所述起點(diǎn)附近預(yù)設(shè)范圍內(nèi)??康钠瘘c(diǎn)公交線路和所述終點(diǎn)預(yù)設(shè)范圍內(nèi)??康慕K 點(diǎn)公交線路; 判斷所述起點(diǎn)公交線路和所述終點(diǎn)公交線路之間是否有公共線路,若否,以廣度優(yōu)先 原則輪番搜索與所述起點(diǎn)公交線路連通的公交線路以及與所述終點(diǎn)公交線路連通的公交 線路,判斷與所述起點(diǎn)公交線路連通的公交線路以及與所述終點(diǎn)公交線路連通的公交線路 之間是否有公共線路; 每當(dāng)與所述起點(diǎn)公交線路連通的公交線路以及與所述終點(diǎn)公交線路連通的公交線路 之間有公共線路,則獲取起點(diǎn)公交線路至各條公共線路的最短連通路徑,并獲取終點(diǎn)公交 線路至各條公共線路的最短連通路徑; 根據(jù)起點(diǎn)公交線路至各條公共線路的最短連通路徑以及終點(diǎn)公交線路至各條公共線 路的最短連通路徑,合成從所述起點(diǎn)至所述終點(diǎn)的各條乘坐路徑,每一條乘坐路徑中各條 公交線路按照需要的乘坐順序依次排列。
2. 根據(jù)權(quán)利要求1所述的公交線路搜索方法,其特征在于,所述以廣度優(yōu)先原則輪番 搜索與起點(diǎn)公交線路連通的公交線路以及與終點(diǎn)公交線路連通的公交線路,判斷與起點(diǎn)公 交線路連通的公交線路以及與終點(diǎn)公交線路連通的公交線路之間是否有公共線路的步驟 包括: 以所有所述起點(diǎn)公交線路構(gòu)成所述起點(diǎn)的首層公交線路,并以所有所述終點(diǎn)公交線 路構(gòu)成所述終點(diǎn)的首層公交線路,以起點(diǎn)的首層公交線路和所述終點(diǎn)的首層公交線路為基 礎(chǔ),輪番逐層擴(kuò)展與所述起點(diǎn)公交線路連通的公交線路層以及與所述終點(diǎn)公交線路連通的 公交線路層,其中,擴(kuò)展任意一個(gè)公交線路層的步驟包括:搜索與上一層公交線路中各公交 線路直接連通且不包含在上級(jí)公交線路層中的公交線路,以該搜索到的公交線路構(gòu)成本層 公交線路層; 每擴(kuò)展一個(gè)公交線路層,都將與所述起點(diǎn)公交線路連通的最外層公交線路層以及與所 述終點(diǎn)公交線路連通的最外層公交線路層進(jìn)行比較,判斷其中是否有公共線路。
3. 根據(jù)權(quán)利要求2所述的公交線路搜索方法,其特征在于,在搜索與上一層公交線路 中各公交線路直接連通且不包含在上級(jí)公交線路層中的公交線路時(shí),不搜索與上一層公交 線路中的公共線路直接連通的公交線路。
4. 根據(jù)權(quán)利要求2所述的公交線路搜索方法,其特征在于,所述方法還包括: 判斷搜索得到的與所述起點(diǎn)公交線路連通的公交線路層數(shù)加上與所述終點(diǎn)公交線路 連通的公交線路層數(shù)之和是否超過(guò)閾值,若是,則停止擴(kuò)展公交線路層。
5. 根據(jù)權(quán)利要求1所述的公交線路搜索方法,其特征在于,所述方法還包括: 獲取各條乘坐路徑包含的公交線路的公交線路信息,公交線路的公交線路信息包括公 交線路所??康墓徽军c(diǎn)的信息; 根據(jù)各條乘坐路徑包含的公交線路的排列順序以及公交線路所停靠的公交站點(diǎn),獲取 通過(guò)各條乘坐路徑從所述起點(diǎn)至所述終點(diǎn)需要依次換乘的公交站點(diǎn); 判斷各條乘坐路徑需要依次換乘的公交站點(diǎn)中前一公交站點(diǎn)至后一公交站點(diǎn)的方向 是否與對(duì)應(yīng)的公交線路的行駛方向相逆,若是,則過(guò)濾相應(yīng)的乘坐路徑。
6. 根據(jù)權(quán)利要求5所述的公交線路搜索方法,其特征在于,所述方法還包括步驟: 生成地址映射數(shù)組,該地址映射數(shù)組的元素?cái)?shù)量與已存儲(chǔ)的公交線路的數(shù)量相等,該 地址映射數(shù)組中的各個(gè)元素用于依次存放按照序列號(hào)排序的所述已存儲(chǔ)的公交線路在內(nèi) 存中對(duì)應(yīng)的存儲(chǔ)位置; 所述獲取各條乘坐路徑包含的公交線路的公交線路信息的步驟中,獲取一條公交線路 的公交線路信息的步驟包括: 讀取該公交線路的序列號(hào)在所述地址映射數(shù)組中對(duì)應(yīng)的元素的值,判斷讀取的值是否 對(duì)應(yīng)內(nèi)存中的存儲(chǔ)位置,若否,則從本地存儲(chǔ)中將該公交線路的公交線路信息加載到內(nèi)存, 將該公交線路的公交線路信息在內(nèi)存中的存儲(chǔ)位置寫(xiě)入所述地址映射數(shù)組中該公交線路 的序列號(hào)對(duì)應(yīng)的元素中,并從內(nèi)存中讀取該公交線路的公交線路信息,若是,則從內(nèi)存中所 述元素的值對(duì)應(yīng)的存儲(chǔ)位置讀取該公交線路的公交線路信息。
7. -種公交線路搜索裝置,其特征在于,包括: 輸入獲取模塊,用于獲取輸入的起點(diǎn)和終點(diǎn)的位置信息; 起終公交線路搜索模塊,用于搜索所述起點(diǎn)附近預(yù)設(shè)范圍內(nèi)停靠的起點(diǎn)公交線路和所 述終點(diǎn)預(yù)設(shè)范圍內(nèi)??康慕K點(diǎn)公交線路; 公共線路搜索模塊,用于判斷所述起點(diǎn)公交線路和所述終點(diǎn)公交線路之間是否有公共 線路,若否,以廣度優(yōu)先原則輪番搜索與所述起點(diǎn)公交線路連通的公交線路以及與所述終 點(diǎn)公交線路連通的公交線路,判斷與所述起點(diǎn)公交線路連通的公交線路以及與所述終點(diǎn)公 交線路連通的公交線路之間是否有公共線路; 可行線路獲取模塊,用于每當(dāng)與所述起點(diǎn)公交線路連通的公交線路以及與所述終點(diǎn)公 交線路連通的公交線路之間有公共線路,則獲取起點(diǎn)公交線路至各條公共線路的最短連通 路徑,并獲取終點(diǎn)公交線路至各條公共線路的最短連通路徑; 乘坐路徑合成模塊,用于根據(jù)起點(diǎn)公交線路至各條公共線路的最短連通路徑以及終點(diǎn) 公交線路至各條公共線路的最短連通路徑,合成從所述起點(diǎn)至所述終點(diǎn)的各條乘坐路徑, 每一條乘坐路徑中各條公交線路按照需要的乘坐順序依次排列。
8. 根據(jù)權(quán)利要求7所述的公交線路搜索裝置,其特征在于,所述公共線路搜索模塊包 括: 第一比較模塊,用于判斷所述起點(diǎn)公交線路和所述終點(diǎn)公交線路之間是否有公共線 路; 搜索模塊,用于若所述起點(diǎn)公交線路和所述終點(diǎn)公交線路之間沒(méi)有公共線路時(shí),以所 有所述起點(diǎn)公交線路構(gòu)成所述起點(diǎn)的首層公交線路,并以所有所述終點(diǎn)公交線路構(gòu)成所述 終點(diǎn)的首層公交線路,以起點(diǎn)的首層公交線路和所述終點(diǎn)的首層公交線路為基礎(chǔ),輪番逐 層擴(kuò)展與所述起點(diǎn)公交線路連通的公交線路層以及與所述終點(diǎn)公交線路連通的公交線路 層,其中,擴(kuò)展任意一個(gè)公交線路層的過(guò)程包括:搜索與上一層公交線路中各公交線路直接 連通且不包含在上級(jí)公交線路層中的公交線路,以該搜索到的公交線路構(gòu)成本層公交線路 層; 第二比較模塊,用于每擴(kuò)展一個(gè)公交線路層,都將與所述起點(diǎn)公交線路連通的最外層 公交線路層以及與所述終點(diǎn)公交線路連通的最外層公交線路層進(jìn)行比較,判斷其中是否有 公共線路。
9. 根據(jù)權(quán)利要求8所述的公交線路搜索裝置,其特征在于,所述搜索模塊在搜索與上 一層公交線路中各公交線路直接連通且不包含在上級(jí)公交線路層中的公交線路時(shí),不搜索 與上一層公交線路中的公共線路直接連通的公交線路。
10. 根據(jù)權(quán)利要求8所述的公交線路搜索裝置,所述搜索模塊還用于判斷搜索得到的 與所述起點(diǎn)公交線路連通的公交線路層數(shù)加上與所述終點(diǎn)公交線路連通的公交線路層數(shù) 之和是否超過(guò)閾值,若是,則停止擴(kuò)展公交線路層。
11. 根據(jù)權(quán)利要求7所述的公交線路搜索裝置,其特征在于,所述裝置還包括: 公交線路信息獲取模塊,用于獲取各條乘坐路徑包含的公交線路的公交線路信息,公 交線路的公交線路信息包括公交線路所??康墓徽军c(diǎn)的信息; 換乘公交站點(diǎn)獲取模塊,用于根據(jù)各條乘坐路徑包含的公交線路的排列順序以及公交 線路所??康墓徽军c(diǎn),獲取通過(guò)各條乘坐路徑從所述起點(diǎn)至所述終點(diǎn)需要依次換乘的公 交站點(diǎn); 過(guò)濾模塊,用于判斷各條乘坐路徑需要依次換乘的公交站點(diǎn)中前一公交站點(diǎn)至后一公 交站點(diǎn)的方向是否與對(duì)應(yīng)的公交線路的行駛方向相逆,若是,則過(guò)濾相應(yīng)的乘坐路徑。
12. 根據(jù)權(quán)利要求11所述的公交線路搜索裝置,其特征在于,所述裝置還包括: 數(shù)組生成模塊,用于生成地址映射數(shù)組,該地址映射數(shù)組的元素?cái)?shù)量與已存儲(chǔ)的公交 線路的數(shù)量相等,該地址映射數(shù)組中的各個(gè)元素用于依次存放按照序列號(hào)排序的所述已存 儲(chǔ)的公交線路在內(nèi)存中對(duì)應(yīng)的存儲(chǔ)位置; 所述公交線路信息獲取模塊獲取一條公交線路的公交線路信息的過(guò)程包括:讀取該公 交線路的序列號(hào)在所述地址映射數(shù)組中對(duì)應(yīng)的元素的值,判斷讀取的值是否對(duì)應(yīng)內(nèi)存中的 存儲(chǔ)位置,若否,則從本地存儲(chǔ)中將該公交線路的公交線路信息加載到內(nèi)存,將該公交線路 的公交線路信息在內(nèi)存中的存儲(chǔ)位置寫(xiě)入所述地址映射數(shù)組中該公交線路的序列號(hào)對(duì)應(yīng) 的元素中,并從內(nèi)存中讀取該公交線路的公交線路信息,若是,則從內(nèi)存中所述元素的值對(duì) 應(yīng)的存儲(chǔ)位置讀取該公交線路的公交線路信息。
【文檔編號(hào)】G06F17/30GK104268190SQ201410476675
【公開(kāi)日】2015年1月7日 申請(qǐng)日期:2014年9月17日 優(yōu)先權(quán)日:2014年9月17日
【發(fā)明者】李曉濤, 左志鵬 申請(qǐng)人:騰訊科技(深圳)有限公司
網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
深州市| 布尔津县| 南丰县| 和田市| 普定县| 社会| 犍为县| 五莲县| 屯门区| 商丘市| 南丰县| 宜君县| 潍坊市| 西藏| 即墨市| 迁西县| 田东县| 安庆市| 上林县| 贡觉县| 贵南县| 永春县| 林周县| 黄浦区| 波密县| 西城区| 元江| 奇台县| 垣曲县| 宁津县| 苗栗市| 沙河市| 饶河县| 白城市| 中山市| 三穗县| 马龙县| 德清县| 阿城市| 桦甸市| 和政县|