一種生成光纜網(wǎng)絡(luò)拓?fù)涞姆椒ê脱b置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及光纜網(wǎng)絡(luò)技術(shù),特別是指一種生成光纜網(wǎng)絡(luò)拓?fù)涞姆椒ê脱b置。
【背景技術(shù)】
[0002]光纜網(wǎng)絡(luò)現(xiàn)狀信息保存在光纜段表中,在制定組網(wǎng)方案時,根據(jù)需要組網(wǎng)的站點對光纜段信息進(jìn)行反復(fù)查詢,每次查詢僅能得到與當(dāng)前站點存在光纜連接的相鄰站點的信息,對于實際組網(wǎng)中通過一個或多個站點進(jìn)行跳接實現(xiàn)互通的情況則需要進(jìn)行多次查詢以及人工記錄。
[0003]在實際光纜建設(shè)中相當(dāng)一部分站點之間的光纜互通是不同光纜段通過跳接實現(xiàn)的。要實現(xiàn)跳接組網(wǎng),就現(xiàn)有技術(shù)而言只能先對每次查詢結(jié)果進(jìn)行暫存,然后人工將相關(guān)聯(lián)的光纜段進(jìn)行連接。
[0004]現(xiàn)有技術(shù)存在如下問題:查詢結(jié)果為離散數(shù)據(jù),無法體現(xiàn)光纜段間的關(guān)聯(lián);查詢效率低下,僅能查詢到與當(dāng)前站點相鄰的站點,如要獲取所有與當(dāng)前站點存在光纜段連通的站點只能通過多次查詢,而且由于站點之間的光纜段信息與實際工程相關(guān),無規(guī)律可循,查詢條件無法固定因此也無法通過條件查詢的方式一次性獲取到所有關(guān)聯(lián)站點信息。
【發(fā)明內(nèi)容】
[0005]本發(fā)明要解決的技術(shù)問題是提供一種生成光纜網(wǎng)絡(luò)拓?fù)涞姆椒ê脱b置,解決現(xiàn)有技術(shù)中,由于站點之間的光纜段信息無規(guī)律可循,要獲取所有與當(dāng)前站點存在光纜段連通的站點只能通過多次查詢的缺陷。
[0006]為解決上述技術(shù)問題,本發(fā)明的實施例提供一種生成光纜網(wǎng)絡(luò)拓?fù)涞姆椒ǎ椒ò?光纜段信息步驟,獲取所有以第一指定站點為起點或終點的光纜段信息,以及,將所述第一指定站點作為當(dāng)前站點;遞歸第一步驟,獲取當(dāng)前站點以及與所述當(dāng)前站點直接連接的所有的關(guān)聯(lián)站點以形成站點列表;遞歸第二步驟,從所述站點列表中取出一個站點作為當(dāng)前站點,對該當(dāng)前站點添加已查詢標(biāo)識,并將攜帶已查詢標(biāo)識的當(dāng)前站點存放在站點數(shù)據(jù)結(jié)構(gòu)中,在所述站點列表中遍歷下一個站點,若該下一個站點不在站點數(shù)據(jù)結(jié)構(gòu)中,則將該下一個站點加入站點數(shù)據(jù)結(jié)構(gòu)中,并對該下一個站點添加未查詢標(biāo)識;將該下一個站點作為新的當(dāng)前站點,返回調(diào)用所述遞歸第一步驟,直至站點數(shù)據(jù)結(jié)構(gòu)中的站點均標(biāo)識為已查詢;拓?fù)洳襟E,根據(jù)所述站點數(shù)據(jù)結(jié)構(gòu)查詢光纜段數(shù)據(jù)庫得到光纜網(wǎng)絡(luò)拓?fù)洹?br>[0007]所述的方法中,還包括:站點列表是一個一維數(shù)組;站點數(shù)據(jù)結(jié)構(gòu)是二維數(shù)組,二維數(shù)組初始化為空。
[0008]所述的方法中,獲取當(dāng)前站點以及與所述當(dāng)前站點直接連接的所有的關(guān)聯(lián)站點以形成站點列表具體包括:在光纜段數(shù)據(jù)庫中,查找與當(dāng)前站點相關(guān)的記錄,當(dāng)所述記錄中記載了所述當(dāng)前站點與一站點直接連接時,則該站點是與當(dāng)前站點直接連接的關(guān)聯(lián)站點。
[0009]所述的方法中,在所述站點列表中遍歷下一個站點之后還包括:若該下一個站點在站點數(shù)據(jù)結(jié)構(gòu)中,則再次在所述站點列表中遍歷下一個站點是否在站點數(shù)據(jù)結(jié)構(gòu)中;若直至遍歷完所述站點列表的站點均在所述站點數(shù)據(jù)結(jié)構(gòu)中,則回到最近一次所遍歷的站點列表中,在所述最近一次所遍歷的站點列表中遍歷下一個站點。
[0010]一種生成光纜網(wǎng)絡(luò)拓?fù)涞难b置,包括:光纜段信息單元,用于獲取所有以第一指定站點為起點或終點的光纜段信息,以及,將所述第一指定站點作為當(dāng)前站點;遞歸第一單元,用于獲取當(dāng)前站點以及所述當(dāng)前站點所有的關(guān)聯(lián)站點以形成站點列表;遞歸第二單元,用于從所述站點列表中取出一個站點作為當(dāng)前站點,對該當(dāng)前站點添加已查詢標(biāo)識,并將攜帶已查詢標(biāo)識的當(dāng)前站點存放在站點數(shù)據(jù)結(jié)構(gòu)中,在所述站點列表中遍歷下一個站點,若該下一個站點不在站點數(shù)據(jù)結(jié)構(gòu)中,則將該下一個站點加入站點數(shù)據(jù)結(jié)構(gòu)中,并對該下一個站點添加未查詢標(biāo)識;將該下一個站點作為新的當(dāng)前站點,返回調(diào)用所述遞歸第一步驟,直至站點數(shù)據(jù)結(jié)構(gòu)中的站點均標(biāo)識為已查詢;拓?fù)鋯卧?,用于根?jù)所述站點數(shù)據(jù)結(jié)構(gòu)查詢光纜段數(shù)據(jù)庫得到光纜網(wǎng)絡(luò)拓?fù)洹?br>[0011]所述的裝置中,還包括:數(shù)組初始化單元,用于初始化站點列表是一個一維數(shù)組;站點數(shù)據(jù)結(jié)構(gòu)是指二維數(shù)組,二維數(shù)組初始化為空。
[0012]所述的裝置中,遞歸第一單元包括:數(shù)據(jù)庫查詢模塊,用于在光纜段數(shù)據(jù)庫中,查找與當(dāng)前站點相關(guān)的記錄,當(dāng)所述記錄中記載了所述當(dāng)前站點與一站點直接連接時,則該站點是與當(dāng)前站點直接連接的關(guān)聯(lián)站點。
[0013]所述的裝置中,遞歸第二單元包括:站點列表回退模塊,用于在所述站點列表中遍歷下一個站點之后還包括:若該下一個站點在站點數(shù)據(jù)結(jié)構(gòu)中,則再次在所述站點列表中遍歷下一個站點是否在站點數(shù)據(jù)結(jié)構(gòu)中;若直至遍歷完所述站點列表的站點均在所述站點數(shù)據(jù)結(jié)構(gòu)中,則回到最近一次所遍歷的站點列表中,在所述最近一次所遍歷的站點列表中遍歷下一個站點。
[0014]本發(fā)明的上述技術(shù)方案的有益效果如下:采用了遞歸式的查找原理,在無需人工參預(yù)的情況下可對光纜段信息進(jìn)行全面的檢索,一次性獲取所有與當(dāng)前站點存在直接或者間接連通的光纜段的光纜段信息。
【附圖說明】
[0015]圖1表示一種生成光纜網(wǎng)絡(luò)拓?fù)涞姆椒鞒淌疽鈭D;
[0016]圖2表示根據(jù)站點列表查詢光纜段數(shù)據(jù)庫得到光纜網(wǎng)絡(luò)拓?fù)涞脑硎疽鈭D;
[0017]圖3表示若干個站點形成的光纜網(wǎng)絡(luò)。
【具體實施方式】
[0018]為使本發(fā)明要解決的技術(shù)問題、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖及具體實施例進(jìn)行詳細(xì)描述。
[0019]本發(fā)明實施例中,從深度和廣度上對現(xiàn)有的光纜段信息進(jìn)行遞歸查詢,直至查詢所有與當(dāng)前站點存在直接或間接光纜連通的站點,形成站點列表,根據(jù)站點列表查詢光纜段數(shù)據(jù)庫得出完整的光纜網(wǎng)絡(luò)拓?fù)涞男畔ⅰ?br>[0020]本發(fā)明實施例提供一種生成光纜網(wǎng)絡(luò)拓?fù)涞姆椒?,如圖1所示,包括:
[0021]光纜段信息步驟,獲取所有以第一指定站點為起點或終點的光纜段信息,以及,將所述第一指定站點作為當(dāng)前站點;
[0022]遞歸第一步驟,獲取當(dāng)前站點以及與所述當(dāng)前站點直接連接的所有的關(guān)聯(lián)站點以形成站點列表;
[0023]遞歸第二步驟,從所述站點列表中取出一個站點作為當(dāng)前站點,對該當(dāng)前站點添加已查詢標(biāo)識,并將攜帶已查詢標(biāo)識的當(dāng)前站點存放在站點數(shù)據(jù)結(jié)構(gòu)中,在所述站點列表中遍歷下一個站點,若該下一個站點不在站點數(shù)據(jù)結(jié)構(gòu)中,則將該下一個站點加入站點數(shù)據(jù)結(jié)構(gòu)中,并對該下一個站點添加未查詢標(biāo)識;
[0024]將該下一個站點作為新的當(dāng)前站點,返回調(diào)用所述遞歸第一步驟,直至站點數(shù)據(jù)結(jié)構(gòu)中的站點均標(biāo)識為已查詢;
[0025]拓?fù)洳襟E,根據(jù)所述站點數(shù)據(jù)結(jié)構(gòu)查詢光纜段數(shù)據(jù)庫得到光纜網(wǎng)絡(luò)拓?fù)洹?br>[0026]應(yīng)用所提供的技術(shù),采用了遞歸式的查找原理,在無需人工參預(yù)的情況下可對光纜段信息進(jìn)行全面的檢索,一次性獲取所有與當(dāng)前站點存在直接或者間接連通的光纜段的光纜段信息。
[0027]在一個優(yōu)選實施例中,獲取當(dāng)前站點以及與所述當(dāng)前站點直接連接的所有的關(guān)聯(lián)站點以形成站點列表具體包括:在光纜段數(shù)據(jù)庫中,查找與當(dāng)前站點相關(guān)的記錄,當(dāng)所述記錄中記載了所述當(dāng)前站點與一站點直接連接時,則該站點是與當(dāng)前站點直接連接的關(guān)聯(lián)站點。
[0028]根據(jù)實施例可以看出,遞歸第一步驟中,與當(dāng)前站點直接連接的所有的關(guān)聯(lián)站點應(yīng)當(dāng)采用如下方式獲取:若光纜數(shù)據(jù)庫中包含連接關(guān)系為A-B,A-C, B-C, D-A,以及,B-E和B-F,以及E-G和E-H等多段光纜段信息,如果把A當(dāng)作當(dāng)前站點進(jìn)行查詢,查詢結(jié)果是B、C和D是與當(dāng)前站點A直接連接的關(guān)聯(lián)站點,而站點E、F、G和H則不是與當(dāng)前站點A直接連接的關(guān)聯(lián)站點。
[0029]當(dāng)前站點的關(guān)聯(lián)站點是指,所有與當(dāng)前站點存在直接或間接光纜連通的站點,但在遞歸第一步驟中,形成站點列表的是與所述當(dāng)前站點直接連接的所有的關(guān)聯(lián)站點,并不包括間接連接的關(guān)聯(lián)站點。站點列表是一個一維數(shù)組;站點數(shù)據(jù)結(jié)構(gòu)是指二維數(shù)組,二維數(shù)組初始化時為空。通過對站點列表這個一維數(shù)組中的各個站點進(jìn)行遍歷可以實現(xiàn)對站點列表中的各個站點逐個進(jìn)行處理。
[0030]在一個應(yīng)用場景中,站點列表是一個一維數(shù)組,站點數(shù)據(jù)結(jié)構(gòu)是指二維數(shù)組,且二維數(shù)組一開始是空的,包括:
[0031]光纜段信息步驟,獲取所有以第一指定站點A為起點,以第二指定站點D為終點的光纜段信息,以及,將所述第一指定站點A或者第二指定站點D作為當(dāng)前站點,不失一般性,具體選用第一指定站點A作為最開始的當(dāng)前站點。
[0032]如圖3所示,遞歸第一步驟,獲取當(dāng)前站點A以及所述當(dāng)前站點A所有的關(guān)聯(lián)站點B、C和D以形成站點列表;此時,因為是第一次形成一個站點列表,這個站點列表中目前是包含了站點A、B、C和D。需要注意的是,當(dāng)在遞歸第二步驟中返回調(diào)用所述遞歸第一步驟時,當(dāng)前站點就不再是A站點了,因此所形成的新的站點列表中應(yīng)當(dāng)是其他的站點。例如,在第一次從遞歸第二步驟中返回調(diào)用所述遞歸第一步驟時,當(dāng)前站點是B,以及站點B所有的關(guān)聯(lián)站點E、F等;在第二次從遞歸第二步驟中返回調(diào)用所述遞歸第一步驟時,當(dāng)前站點是C,以及站點C所有的關(guān)聯(lián)站點A和B ;
[0033]遞歸第二步驟,從所述站點列表中取出一個站點A作為當(dāng)前站點A,對該當(dāng)前站點A添加已查詢標(biāo)識,并將攜帶已查詢標(biāo)識的當(dāng)前站點A存放在二維數(shù)組中,在所述站點列表中遍歷下一個站點B,若該下一個站點B不在二維數(shù)組中,則將該下一個站點B加入二維數(shù)組中,并對該下一個站點B添加未查詢標(biāo)識,直至遍歷完所述站點列表,此時,站點C和站點D也位于二維數(shù)組中了;
[0034]將該下一個站點B作為新的當(dāng)前站點B,返回調(diào)用所述遞歸第一步驟,直至二維數(shù)組中的站點C和站點D最終也均標(biāo)識為已查詢;
[0035]拓?fù)洳襟E,根據(jù)二維數(shù)組查詢光纜段數(shù)據(jù)庫得到光纜網(wǎng)絡(luò)拓?fù)?。光纜網(wǎng)絡(luò)拓?fù)渲兄辽侔苏军cA、B、C和D,而且很有可能還包括了在第二次甚至更多次調(diào)用了遞歸第一步驟之后找到的站點E、F、G和H等。
[0036]遞歸第二步驟中,直至二維數(shù)組中的站點均標(biāo)識為已查詢。二維數(shù)組中的站點均標(biāo)識為查詢就表示所有與第一個站點(指定站點A)存在直接或間接連接關(guān)系的站點均查詢到了,通過二維數(shù)組中的站點再來查詢光纜段數(shù)據(jù)庫即可得到所有的光纜段,借助于圖形函數(shù)將各光纜段添加到圖形控件當(dāng)中即可得到光纜拓?fù)浣Y(jié)構(gòu)。
[0037]在一個優(yōu)選實施例中,在所述站點列表中遍歷下一個站點之后還包括:
[0038]若該下一個站點在站點數(shù)據(jù)結(jié)構(gòu)中,則再次在所述站點列表中遍歷下一個站點是否在站點數(shù)據(jù)結(jié)構(gòu)中,若直至遍歷完所述站點列表的站點均在所