欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種信息匹配方法及裝置的制造方法

文檔序號:10489008閱讀:459來源:國知局
一種信息匹配方法及裝置的制造方法
【專利摘要】本發(fā)明實施例提供了一種信息匹配方法及裝置,其中方法包括:獲取輸入的待檢索信息;在預設數(shù)據庫中按照預設規(guī)則查找與所述待檢索信息相匹配的數(shù)據;輸出所查找到的與所述待檢索信息相匹配的數(shù)據;其中,所述預設數(shù)據庫中的數(shù)據按照Trie樹方式存儲,并且,所述Trie樹中除了普通節(jié)點外還包括模糊節(jié)點,所述模糊節(jié)點用于在需要進行模糊查找時越過同一級中的各兄弟普通節(jié)點而直接達到所述同一級中的各兄弟普通節(jié)點的子節(jié)點。本發(fā)明對Trie樹的結構進行了改進,在Trie樹的普通節(jié)點的基礎上添加了模糊節(jié)點,使之變?yōu)楦m合模糊匹配的數(shù)據結構,使用時可大大減少查找和比較的次數(shù),進而提高了模糊查找的速度。
【專利說明】
_種信息匹配方法及裝置
技術領域
[0001]本發(fā)明涉及計算機技術,尤其涉及一種信息匹配方法及裝置。
【背景技術】
[0002]當前很多網頁或APP等都提供檢索功能,用戶在使用時可能會輸入錯誤的查詢詞,或者是輸入模糊的查詢詞,此時就需要使用模糊匹配技術,為用戶提供盡可能正確的檢索結果。在現(xiàn)有技術中,可以通過在Trie樹的結構上使用深度優(yōu)先搜索算法,來實現(xiàn)對檢索詞的模糊匹配。
[0003]Trie樹又可稱前綴樹或字典樹,是一種匹配查找的常用方法,可以用來排序和保存大量的字符串等信息,所以經常被搜索引擎系統(tǒng)用于文本詞頻統(tǒng)計。它的優(yōu)點是:利用字符串的公共前綴來減少查詢時間,最大限度地減少無謂的字符串比較,查詢效率比哈希樹高。深度優(yōu)先搜索則是一種常用的枚舉搜索法,其規(guī)則簡單說來就是從根節(jié)點出發(fā),對每一個可能的分支路徑深入到不能再深入為止,且每個節(jié)點只能訪問一次。
[0004]發(fā)明人在實現(xiàn)本發(fā)明的過程中發(fā)現(xiàn),現(xiàn)有的這種檢索方式在使用時查找和比較的次數(shù)太多,導致運行速度很慢,效率很低,用戶體驗不好。

【發(fā)明內容】

[0005]為克服現(xiàn)有技術中存在的問題,本發(fā)明實施例提供一種信息匹配方法及裝置,提高模糊檢索時的效率。
[0006]根據本發(fā)明實施例的第一方面,提供一種信息匹配方法,所述方法包括:
[0007]獲取輸入的待檢索信息;
[0008]在預設數(shù)據庫中按照預設規(guī)則查找與所述待檢索信息相匹配的數(shù)據;
[0009]輸出所查找到的與所述待檢索信息相匹配的數(shù)據;
[0010]其中,所述預設數(shù)據庫中的數(shù)據按照Trie樹方式存儲,并且,所述Trie樹中除了普通節(jié)點外還包括模糊節(jié)點,所述模糊節(jié)點用于在需要進行模糊查找時越過同一級中的各兄弟普通節(jié)點而直接達到所述同一級中的各兄弟普通節(jié)點的子節(jié)點;
[0011]所述預設規(guī)則包括:
[0012]按照深度優(yōu)先算法在所述預設數(shù)據庫查找與所述待檢索信息相匹配的數(shù)據,當需要選取下一個節(jié)點時,如果此時為模糊查找,則只選取下一個節(jié)點中的模糊節(jié)點。
[0013]可選的:
[0014I所述模糊節(jié)點分為一級模糊節(jié)點和二級模糊節(jié)點,所述Tri e樹的每個普通節(jié)點下帶有一個一級模糊節(jié)點,每個一級模糊節(jié)點下帶有一個二級模糊節(jié)點,所述一級模糊節(jié)點的父節(jié)點的子子節(jié)點中的所有普通節(jié)點均鏈接到當前一級模糊節(jié)點下,所述二級模糊節(jié)點的祖父節(jié)點的子子子節(jié)點中所有普通節(jié)點均鏈接到當前二級模糊節(jié)點下,作為葉子節(jié)點的一級模糊節(jié)點儲存有同父的所有兄弟普通節(jié)點中所儲存的數(shù)據,作為葉子節(jié)點的二級模糊節(jié)點儲存有同祖父的所有兄弟普通節(jié)點中所儲存的數(shù)據。
[0015]可選的,在獲取輸入的待檢索信息之前,所述方法還包括:
[0016]獲取用于生成所述預設數(shù)據庫的數(shù)據;
[0017]將所述用于生成所述預設數(shù)據庫的數(shù)據按照Trie樹方式存儲;
[0018]在每個Trie樹的普通節(jié)點下添加一個一級模糊節(jié)點,在每個一級模糊節(jié)點下添加一個二級模糊節(jié)點,將一級模糊節(jié)點的父節(jié)點的子子節(jié)點中的所有普通節(jié)點均鏈接到當前一級模糊節(jié)點下,將二級模糊節(jié)點的祖父節(jié)點的子子子節(jié)點中的所有普通節(jié)點均鏈接到當前二級模糊節(jié)點下,并令作為葉子節(jié)點的一級模糊節(jié)點儲存有同父的所有兄弟普通節(jié)點所儲存的數(shù)據,作為葉子節(jié)點的二級模糊節(jié)點儲存有同祖父的所有兄弟普通節(jié)點所儲存的數(shù)據,以生成所述預設數(shù)據庫。
[0019]可選的,通過如下方式判斷是否為模糊查找:
[0020]如果所述待檢索信息中包括模糊通配符,則當所述查找進行到所述模糊通配符的位置處時,判斷為此時進行模糊查找。
[0021]可選的,所述輸出所查找到的與所述待檢索信息相匹配的數(shù)據,包括:
[0022]輸出所查找到的葉子節(jié)點中所存儲的數(shù)據。
[0023]根據本發(fā)明實施例的第二方面,提供一種信息匹配裝置,所述裝置包括:
[0024]獲取單元,用于獲取輸入的待檢索信息;
[0025]匹配單元,用于在預設數(shù)據庫中按照預設規(guī)則查找與所述待檢索信息相匹配的數(shù)據;
[0026]輸出單元,用于輸出所查找到的與所述待檢索信息相匹配的數(shù)據;
[0027]其中,所述預設數(shù)據庫中的數(shù)據按照Trie樹方式存儲,并且,所述Trie樹中除了普通節(jié)點外還包括模糊節(jié)點,所述模糊節(jié)點用于在需要進行模糊查找時越過同一級中的各兄弟普通節(jié)點而直接達到所述同一級中的各兄弟普通節(jié)點的子節(jié)點;
[0028]所述預設規(guī)則包括:
[0029]按照深度優(yōu)先算法在所述預設數(shù)據庫查找與所述待檢索信息相匹配的數(shù)據,當需要選取下一個節(jié)點時,如果此時為模糊查找,則只選取下一個節(jié)點中的模糊節(jié)點。
[0030]可選的:
[0031 ]所述模糊節(jié)點分為一級模糊節(jié)點和二級模糊節(jié)點,所述Trie樹的每個普通節(jié)點下帶有一個一級模糊節(jié)點,每個一級模糊節(jié)點下帶有一個二級模糊節(jié)點,所述一級模糊節(jié)點的父節(jié)點的子子節(jié)點中的所有普通節(jié)點均鏈接到當前一級模糊節(jié)點下,所述二級模糊節(jié)點的祖父節(jié)點的子子子節(jié)點中所有普通節(jié)點均鏈接到當前二級模糊節(jié)點下,作為葉子節(jié)點的一級模糊節(jié)點儲存有同父的所有兄弟普通節(jié)點中所儲存的數(shù)據,作為葉子節(jié)點的二級模糊節(jié)點儲存有同祖父的所有兄弟普通節(jié)點中所儲存的數(shù)據。
[0032]可選的,所述裝置還包括:
[0033]預設數(shù)據庫生成單元,用于:
[0034]獲取用于生成所述預設數(shù)據庫的數(shù)據;將所述用于生成所述預設數(shù)據庫的數(shù)據按照Trie樹方式存儲;在每個Trie樹的普通節(jié)點下添加一個一級模糊節(jié)點,在每個一級模糊節(jié)點下添加一個二級模糊節(jié)點,將一級模糊節(jié)點的父節(jié)點的子子節(jié)點中的所有普通節(jié)點均鏈接到當前一級模糊節(jié)點下,將二級模糊節(jié)點的祖父節(jié)點的子子子節(jié)點中的所有普通節(jié)點均鏈接到當前二級模糊節(jié)點下,并令作為葉子節(jié)點的一級模糊節(jié)點儲存有同父的所有兄弟普通節(jié)點所儲存的數(shù)據,作為葉子節(jié)點的二級模糊節(jié)點儲存有同祖父的所有兄弟普通節(jié)點所儲存的數(shù)據,以生成所述預設數(shù)據庫。
[0035]可選的,所述匹配單元通過如下方式判斷是否為模糊查找:
[0036]如果所述待檢索信息中包括模糊通配符,則當所述查找進行到所述模糊通配符的位置處時,判斷為此時進行模糊查找。
[0037]可選的,所述輸出單元用于:
[0038]輸出所查找到的葉子節(jié)點中所存儲的數(shù)據。
[0039]本發(fā)明的實施例提供的技術方案可以包括以下有益效果:
[°04°]本發(fā)明對Trie樹的結構進行了改進,在Trie樹的普通節(jié)點的基礎上添加了模糊節(jié)點,使之變?yōu)楦m合模糊匹配的數(shù)據結構,使用時可大大減少查找和比較的次數(shù),進而提高了模糊查找的速度。
[0041]應當理解的是,以上的一般描述和后文的細節(jié)描述僅是示例性和解釋性的,并不能限制本發(fā)明。
【附圖說明】
[0042]此處的附圖被并入說明書中并構成本說明書的一部分,示出了符合本發(fā)明的實施例,并與說明書一起用于解釋本發(fā)明的原理。
[0043I圖1是現(xiàn)有技術中Trie樹的示意圖;
[0044]圖2是現(xiàn)有技術中在Trie樹進行查找時的查找順序示意圖;
[0045]圖3是根據本發(fā)明一示例性實施例示出的一種信息匹配方法的流程圖;
[0046]圖4是根據本發(fā)明一示例性實施例示出的帶模糊節(jié)點的Trie樹示意圖;
[0047]圖5是根據本發(fā)明一示例性實施例示出的模糊節(jié)點鏈接示意圖;
[0048]圖6是現(xiàn)有技術中進行模糊查找的示意圖;
[0049]圖7是根據本發(fā)明一示例性實施例示出的進行模糊查找的示意圖;
[0050]圖8是根據本發(fā)明一示例性實施例示出的一種信息匹配方法的流程圖;
[0051]圖9是根據本發(fā)明一示例性實施例示出的一種信息匹配裝置的示意圖;
[0052]圖10是根據本發(fā)明一示例性實施例示出的一種信息匹配裝置的示意圖。
【具體實施方式】
[0053]這里將詳細地對示例性實施例進行說明,其示例表示在附圖中。下面的描述涉及附圖時,除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實施例中所描述的實施方式并不代表與本發(fā)明相一致的所有實施方式。相反,它們僅是與如所附權利要求書中所詳述的、本發(fā)明的一些方面相一致的裝置和方法的例子。
[0054]首先對Trie樹進行一下簡單介紹。假設Trie樹中存儲的數(shù)據是“勇者大冒險”、“勇者大沖關”、“勇者傳說”、“圣域傳說”、“神話傳說”這些詞條,參見圖1所示。再假設某時刻用戶輸入的待查詢關鍵詞是“勇者傳說”,則檢索系統(tǒng)會將“勇者傳說”分為4個單字‘勇’、‘者’、‘傳V說’,然后從根節(jié)點出發(fā),檢索‘勇’字,進入該節(jié)點,從‘勇’字節(jié)點出發(fā),檢索‘者’字,進入該節(jié)點,如此下去,直至發(fā)現(xiàn)全部單字,命中“勇者傳說”,搜索結束。該過程可參見圖2所示,在圖2中,節(jié)點旁邊的數(shù)字代表搜索節(jié)點時的順序,下同。
[0055]圖3是根據一示例性實施例示出的一種信息匹配方法的流程圖。該方法可用于手機、平板電腦、臺式機等終端設備,也可用于服務器等。
[0056]參見圖3所示,該方法可以包括:
[0057]步驟S301,獲取輸入的待檢索信息。
[0058]例如當用戶需要檢索某信息時,可在手機的搜索框中輸入待檢索信息,然后點擊檢索按鈕。
[0059]步驟S302,在預設數(shù)據庫中按照預設規(guī)則查找與所述待檢索信息相匹配的數(shù)據。
[0060]其中,所述預設數(shù)據庫中的數(shù)據按照Trie樹方式存儲,并且,所述Trie樹中除了普通節(jié)點外還包括模糊節(jié)點,所述模糊節(jié)點用于在需要進行模糊查找時越過同一級中的各兄弟普通節(jié)點而直接達到所述同一級中的各兄弟普通節(jié)點的子節(jié)點;
[0061]所述預設規(guī)則包括:
[0062]按照深度優(yōu)先算法在所述預設數(shù)據庫查找與所述待檢索信息相匹配的數(shù)據,當需要選取下一個節(jié)點時,如果此時為模糊查找,則只選取下一個節(jié)點中的模糊節(jié)點。
[0063]同一級的各兄弟普通節(jié)點可以是同父的子節(jié)點,也可以是同祖父的子子節(jié)點。
[0064]具體的,在本實施例或本發(fā)明其他某些實施例中:
[0065]所述模糊節(jié)點分為一級模糊節(jié)點和二級模糊節(jié)點,所述Tri e樹的每個普通節(jié)點下帶有一個一級模糊節(jié)點,每個一級模糊節(jié)點下帶有一個二級模糊節(jié)點,所述一級模糊節(jié)點的父節(jié)點的子子節(jié)點中的所有普通節(jié)點均鏈接到當前一級模糊節(jié)點下,所述二級模糊節(jié)點的祖父節(jié)點的子子子節(jié)點中的所有普通節(jié)點均鏈接到當前二級模糊節(jié)點下,作為葉子節(jié)點的一級模糊節(jié)點儲存有同父的所有兄弟普通節(jié)點中所儲存的數(shù)據,作為葉子節(jié)點的二級模糊節(jié)點儲存有同祖父的所有兄弟普通節(jié)點中所儲存的數(shù)據。
[0066]作為示例可參見圖4?圖5所示,在圖4中,F(xiàn)l節(jié)點為一級模糊節(jié)點、F2節(jié)點為二級模糊節(jié)點。在圖5中,F(xiàn)l節(jié)點的父節(jié)點的子子節(jié)點中的所有普通節(jié)點均鏈接到當前Fl節(jié)點下,成為Fl的子節(jié)點,F(xiàn)2節(jié)點的祖父節(jié)點的子子子節(jié)點中的所有普通節(jié)點均鏈接到當前F2節(jié)點下,成為F2的子節(jié)點。
[0067]對于圖4和圖5需要說明的是,理論上每個普通節(jié)點下都應該增加一個一級模糊節(jié)點,然而實際中有時增加了一級模糊節(jié)點后,該模糊節(jié)點并無意義,所以在圖4和圖5中有些普通節(jié)點下并未繪出模糊節(jié)點。以‘沖’字節(jié)點為例,該節(jié)點下并無子子節(jié)點,所以即使為該節(jié)點添加了 FI節(jié)點,該FI節(jié)點下也沒有可以鏈接的普通節(jié)點,所以該FI節(jié)點也就無存在意義了,故圖4和圖5中‘沖’字節(jié)點下未繪出一級模糊節(jié)點。同理,有些一級模糊節(jié)點下也并未繪出二級模糊節(jié)點。
[0068]步驟S303,輸出所查找到的與所述待檢索信息相匹配的數(shù)據。
[0069]作為示例,所述輸出所查找到的與所述待檢索信息相匹配的數(shù)據,可以包括:
[0070]輸出所查找到的葉子節(jié)點中所存儲的數(shù)據。
[0071]下面結合示例對Trie樹所存儲的數(shù)據進行說明。Trie樹中所述存儲可以為字符串,例如由自然語言構成的詞組。數(shù)據通常主要存儲在葉子節(jié)點。例如對于“勇者傳說”這一詞組,對應四個普通節(jié)點,各節(jié)點分別用于索引‘勇’‘者’‘傳’‘說’,而實際的數(shù)據即“勇者傳說”這一詞條,則存儲在葉子節(jié)點即‘說’字節(jié)點中。另外,因為“勇者”一詞也可以單獨做一個詞條,所以‘者’字節(jié)點也可以存儲“勇者”一詞。
[0072]此外,‘說’字節(jié)點所存儲的數(shù)據除了包括“勇者傳說”這一詞條外,還可以進一步包括其他相關內容,如地址、圖片、簡介、鏈接等等,這樣用戶檢索到“勇者傳說”時就可以進一步看到該檢索結果所關聯(lián)的其他相關內容了。
[0073]在本發(fā)明或本發(fā)明其他某些實施例中,可以通過如下方式判斷是否為模糊查找:
[0074]如果所述待檢索信息中包括模糊通配符,則當所述查找進行到所述模糊通配符的位置處時,判斷為此時進行模糊查找。
[0075]例如模糊通配符可以為”等。
[0076]下面結合具體示例對使用深度優(yōu)先算法的模糊檢索過程進行進一步說明:
[0077]假設要檢索的內容是傳說”,其中‘* ’代表任意字。如果是在普通Trie樹上進行模糊檢索,參見圖6所示,其過程可以如下:
[0078]I)將“**傳說”分為4個單字,即‘*,、‘*,、‘傳,、‘說,。
[0079]2)從根節(jié)點出發(fā),遍歷其所有的子節(jié)點,首先進入節(jié)點‘勇’。
[0080]3)由于第二個字也是‘*’,從‘勇’節(jié)點出發(fā),遍歷其所有節(jié)點,首先進入節(jié)點‘者’。
[0081]4)從‘者’字節(jié)點出發(fā),檢索‘傳’字,進入該節(jié)點。
[0082]5)從‘傳’字節(jié)點出發(fā),檢索‘說’字,進入該節(jié)點,發(fā)現(xiàn)符合條件的詞條“勇者傳說”,于是記錄下來。
[0083]6)回到第3)步,繼續(xù)‘勇’節(jié)點的子節(jié)點的遍歷,重復3)?5)。在這里‘勇’節(jié)點下面只有一個子節(jié)點,所以遍歷結束。
[0084]7)回到第2)步,繼續(xù)根節(jié)點的子節(jié)點的遍歷,重復2)?6)。在這里根節(jié)點下面有三個子節(jié)點,要--遍歷。
[0085]8)統(tǒng)計所有記錄下的符合條件的結果(“勇者傳說”、“圣域傳說”、“神話傳說”),搜索結束。
[0086]而如果使用本發(fā)明中添加了模糊節(jié)點的Trie樹,參見圖7所示,其過程可以如下:
[0087]a)將“林傳說”分為4個單字,即‘*’、‘*’、‘傳’、‘說’。
[0088]b)從根節(jié)點出發(fā),只進入到它的子節(jié)點‘ F I’。
[0089]c)由于第二個字也是‘*’,從‘F1’節(jié)點出發(fā),進入到它的子節(jié)點‘F2’。
[0090]d)從‘F2’節(jié)點出發(fā),檢索‘傳’字,發(fā)現(xiàn)多個節(jié)點,遍歷這些節(jié)點。
[0091]e)從第一個‘傳’字節(jié)點出發(fā),檢索‘說’字,進入該節(jié)點,發(fā)現(xiàn)符合條件的詞條“勇者傳說”,記錄下來。
[0092]f)重復第e步,完成遍歷。
[0093]g)統(tǒng)計所有找到的符合條件的結果(“勇者傳說”、“圣域傳說”、“神話傳說”),搜索結束。
[0094]通過對比圖6和圖7,可以明確看出本發(fā)明檢索速度的優(yōu)勢,因為需要比較的次數(shù)大大減少,在需要進行模糊查找時會越過同一級中的各兄弟普通節(jié)點而直接達到所述同一級中的各兄弟普通節(jié)點的子節(jié)點。
[0095]在現(xiàn)實搜索中,服務器上會儲存大量的數(shù)據,一般每個節(jié)點下面將會由3000左右的子節(jié)點。本發(fā)明避免兩重遍歷,優(yōu)化了約3000x3000倍的速度。這樣使得模糊匹配的速度有了顯著的提升,使得算法變得實際可用。當有80萬數(shù)據量的時候,優(yōu)化前的Trie樹模糊匹配,一次搜索大約用時5?6分鐘,優(yōu)化后的模糊匹配算法搜索用時可忽略不計(小于I毫秒)。
[0096]此外參見圖8所示,在獲取輸入的待檢索信息之前,所述方法還包括:
[0097]步驟S801,獲取用于生成所述預設數(shù)據庫的數(shù)據。
[0098]步驟S802,將所述用于生成所述預設數(shù)據庫的數(shù)據按照Trie樹方式存儲。
[00"]步驟S803,在每個Trie樹的普通節(jié)點下添加一個一級模糊節(jié)點,在每個一級模糊節(jié)點下添加一個二級模糊節(jié)點,將一級模糊節(jié)點的父節(jié)點的子子節(jié)點中的所有普通節(jié)點均鏈接到當前一級模糊節(jié)點下,將二級模糊節(jié)點的祖父節(jié)點的子子子節(jié)點中所有普通節(jié)點均鏈接到當前二級模糊節(jié)點下,并令作為葉子節(jié)點的一級模糊節(jié)點儲存有同父的所有兄弟普通節(jié)點所儲存的數(shù)據,作為葉子節(jié)點的二級模糊節(jié)點儲存有同祖父的所有兄弟普通節(jié)點所儲存的數(shù)據,以生成所述預設數(shù)據庫。
[0100]本發(fā)明實施例對Trie樹的結構進行了改進,為Trie樹的普通節(jié)點添加了模糊節(jié)點,使之變?yōu)楦m合模糊匹配的數(shù)據結構,使用時可大大減少查找和比較的次數(shù),從而提高了查找速度。
[0101]下述為本發(fā)明裝置實施例,可以用于執(zhí)行本發(fā)明方法實施例。對于本發(fā)明裝置實施例中未披露的細節(jié),請參照本發(fā)明方法實施例。
[0102]圖9是根據一示例性實施例示出的一種信息匹配裝置的示意圖。該裝置可用于手機、平板電腦、臺式機等終端設備,也可用于服務器等。
[0103]參見圖9所示,該裝置可以包括:
[0104]獲取單元901,用于獲取輸入的待檢索信息。
[0105]例如當用戶需要檢索某信息時,可在手機的搜索框中輸入待檢索信息,然后點擊檢索按鈕。
[0106]匹配單元902,用于在預設數(shù)據庫中按照預設規(guī)則查找與所述待檢索信息相匹配的數(shù)據。
[0107]其中,所述預設數(shù)據庫中的數(shù)據按照Trie樹方式存儲,并且,所述Trie樹中除了普通節(jié)點外還包括模糊節(jié)點,所述模糊節(jié)點用于在需要進行模糊查找時越過同一級中的各兄弟普通節(jié)點而直接達到所述同一級中的各兄弟普通節(jié)點的子節(jié)點;
[0108]所述預設規(guī)則包括:
[0109]按照深度優(yōu)先算法在所述預設數(shù)據庫查找與所述待檢索信息相匹配的數(shù)據,當需要選取下一個節(jié)點時,如果此時為模糊查找,則只選取下一個節(jié)點中的模糊節(jié)點。
[0110]具體的,在本實施例或本發(fā)明其他某些實施例中:
[0111 ]所述模糊節(jié)點分為一級模糊節(jié)點和二級模糊節(jié)點,所述Trie樹的每個普通節(jié)點下帶有一個一級模糊節(jié)點,每個一級模糊節(jié)點下帶有一個二級模糊節(jié)點,所述一級模糊節(jié)點的父節(jié)點的子子節(jié)點中的所有普通節(jié)點均鏈接到當前一級模糊節(jié)點下,所述二級模糊節(jié)點的祖父節(jié)點的子子子節(jié)點中所有普通節(jié)點均鏈接到當前二級模糊節(jié)點下,作為葉子節(jié)點的一級模糊節(jié)點儲存有同父的所有兄弟普通節(jié)點中所儲存的數(shù)據,作為葉子節(jié)點的二級模糊節(jié)點儲存有同祖父的所有兄弟普通節(jié)點中所儲存的數(shù)據。
[0112]輸出單元903,用于輸出所查找到的與所述待檢索信息相匹配的數(shù)據。
[0113]作為示例,所述輸出單元903具體可以用于:
[0114]輸出所查找到的葉子節(jié)點中所存儲的數(shù)據。
[0115]在本發(fā)明或本發(fā)明其他某些實施例中,所述匹配單元902可以通過如下方式判斷是否為模糊查找:
[0116]如果所述待檢索信息中包括模糊通配符,則當所述查找進行到所述模糊通配符的位置處時,判斷為此時進行模糊查找。
[0117]此外,參見圖1O所示,所述裝置還可以包括:
[0118]預設數(shù)據庫生成單元904,用于:
[0119]獲取用于生成所述預設數(shù)據庫的數(shù)據;將所述用于生成所述預設數(shù)據庫的數(shù)據按照Trie樹方式存儲;在每個Trie樹的普通節(jié)點下添加一個一級模糊節(jié)點,在每個一級模糊節(jié)點下添加一個二級模糊節(jié)點,將一級模糊節(jié)點的父節(jié)點的子子節(jié)點中的所有普通節(jié)點均鏈接到當前一級模糊節(jié)點下,將二級模糊節(jié)點的祖父節(jié)點的子子子節(jié)點中的所有普通節(jié)點均鏈接到當前二級模糊節(jié)點下,并令作為葉子節(jié)點的一級模糊節(jié)點儲存有同父的所有兄弟普通節(jié)點所儲存的數(shù)據,作為葉子節(jié)點的二級模糊節(jié)點儲存有同祖父的所有兄弟普通節(jié)點所儲存的數(shù)據,以生成所述預設數(shù)據庫。
[0120]本發(fā)明實施例對Trie樹的結構進行了改進,為Trie樹的普通節(jié)點添加了模糊節(jié)點,使之變?yōu)楦m合模糊匹配的數(shù)據結構,使用時可大大減少查找和比較的次數(shù),從而提高了查找速度。
[0121]關于上述實施例中的裝置,其中各個單元\模塊執(zhí)行操作的具體方式已經在有關該方法的實施例中進行了詳細描述,此處將不做詳細闡述說明。
[0122]本領域技術人員在考慮說明書及實踐這里公開的發(fā)明后,將容易想到本發(fā)明的其它實施方案。本申請旨在涵蓋本發(fā)明的任何變型、用途或者適應性變化,這些變型、用途或者適應性變化遵循本發(fā)明的一般性原理并包括本發(fā)明未公開的本技術領域中的公知常識或慣用技術手段。說明書和實施例僅被視為示例性的,本發(fā)明的真正范圍和精神由所附的權利要求指出。
[0123]應當理解的是,本發(fā)明并不局限于上面已經描述并在附圖中示出的精確結構,并且可以在不脫離其范圍進行各種修改和改變。本發(fā)明的范圍僅由所附的權利要求來限制。
【主權項】
1.一種信息匹配方法,其特征在于,所述方法包括: 獲取輸入的待檢索信息; 在預設數(shù)據庫中按照預設規(guī)則查找與所述待檢索信息相匹配的數(shù)據; 輸出所查找到的與所述待檢索信息相匹配的數(shù)據; 其中,所述預設數(shù)據庫中的數(shù)據按照Trie樹方式存儲,并且,所述Trie樹中除了普通節(jié)點外還包括模糊節(jié)點,所述模糊節(jié)點用于在需要進行模糊查找時越過同一級中的各兄弟普通節(jié)點而直接達到所述同一級中的各兄弟普通節(jié)點的子節(jié)點; 所述預設規(guī)則包括: 按照深度優(yōu)先算法在所述預設數(shù)據庫查找與所述待檢索信息相匹配的數(shù)據,當需要選取下一個節(jié)點時,如果此時為模糊查找,則只選取下一個節(jié)點中的模糊節(jié)點。2.根據權利要求1所述的方法,其特征在于: 所述模糊節(jié)點分為一級模糊節(jié)點和二級模糊節(jié)點,所述Trie樹的每個普通節(jié)點下帶有一個一級模糊節(jié)點,每個一級模糊節(jié)點下帶有一個二級模糊節(jié)點,所述一級模糊節(jié)點的父節(jié)點的子子節(jié)點中的所有普通節(jié)點均鏈接到當前一級模糊節(jié)點下,所述二級模糊節(jié)點的祖父節(jié)點的子子子節(jié)點中所有普通節(jié)點均鏈接到當前二級模糊節(jié)點下,作為葉子節(jié)點的一級模糊節(jié)點儲存有同父的所有兄弟普通節(jié)點中所儲存的數(shù)據,作為葉子節(jié)點的二級模糊節(jié)點儲存有同祖父的所有兄弟普通節(jié)點中所儲存的數(shù)據。3.根據權利要求2所述的方法,其特征在于,在獲取輸入的待檢索信息之前,所述方法還包括: 獲取用于生成所述預設數(shù)據庫的數(shù)據; 將所述用于生成所述預設數(shù)據庫的數(shù)據按照Trie樹方式存儲; 在每個Trie樹的普通節(jié)點下添加一個一級模糊節(jié)點,在每個一級模糊節(jié)點下添加一個二級模糊節(jié)點,將一級模糊節(jié)點的父節(jié)點的子子節(jié)點中的所有普通節(jié)點均鏈接到當前一級模糊節(jié)點下,將二級模糊節(jié)點的祖父節(jié)點的子子子節(jié)點中的所有普通節(jié)點均鏈接到當前二級模糊節(jié)點下,并令作為葉子節(jié)點的一級模糊節(jié)點儲存有同父的所有兄弟普通節(jié)點所儲存的數(shù)據,作為葉子節(jié)點的二級模糊節(jié)點儲存有同祖父的所有兄弟普通節(jié)點所儲存的數(shù)據,以生成所述預設數(shù)據庫。4.根據權利要求1所述的方法,其特征在于,通過如下方式判斷是否為模糊查找: 如果所述待檢索信息中包括模糊通配符,則當所述查找進行到所述模糊通配符的位置處時,判斷為此時進行模糊查找。5.根據權利要求1所述的方法,其特征在于,所述輸出所查找到的與所述待檢索信息相匹配的數(shù)據,包括: 輸出所查找到的葉子節(jié)點中所存儲的數(shù)據。6.一種信息匹配裝置,其特征在于,所述裝置包括: 獲取單元,用于獲取輸入的待檢索信息; 匹配單元,用于在預設數(shù)據庫中按照預設規(guī)則查找與所述待檢索信息相匹配的數(shù)據; 輸出單元,用于輸出所查找到的與所述待檢索信息相匹配的數(shù)據; 其中,所述預設數(shù)據庫中的數(shù)據按照Trie樹方式存儲,并且,所述Trie樹中除了普通節(jié)點外還包括模糊節(jié)點,所述模糊節(jié)點用于在需要進行模糊查找時越過同一級中的各兄弟普通節(jié)點而直接達到所述同一級中的各兄弟普通節(jié)點的子節(jié)點; 所述預設規(guī)則包括: 按照深度優(yōu)先算法在所述預設數(shù)據庫查找與所述待檢索信息相匹配的數(shù)據,當需要選取下一個節(jié)點時,如果此時為模糊查找,則只選取下一個節(jié)點中的模糊節(jié)點。7.根據權利要求6所述的裝置,其特征在于: 所述模糊節(jié)點分為一級模糊節(jié)點和二級模糊節(jié)點,所述Trie樹的每個普通節(jié)點下帶有一個一級模糊節(jié)點,每個一級模糊節(jié)點下帶有一個二級模糊節(jié)點,所述一級模糊節(jié)點的父節(jié)點的子子節(jié)點中的所有普通節(jié)點均鏈接到當前一級模糊節(jié)點下,所述二級模糊節(jié)點的祖父節(jié)點的子子子節(jié)點中所有普通節(jié)點均鏈接到當前二級模糊節(jié)點下,作為葉子節(jié)點的一級模糊節(jié)點儲存有同父的所有兄弟普通節(jié)點中所儲存的數(shù)據,作為葉子節(jié)點的二級模糊節(jié)點儲存有同祖父的所有兄弟普通節(jié)點中所儲存的數(shù)據。8.根據權利要求7所述的裝置,其特征在于,所述裝置還包括: 預設數(shù)據庫生成單元,用于: 獲取用于生成所述預設數(shù)據庫的數(shù)據;將所述用于生成所述預設數(shù)據庫的數(shù)據按照Trie樹方式存儲;在每個Trie樹的普通節(jié)點下添加一個一級模糊節(jié)點,在每個一級模糊節(jié)點下添加一個二級模糊節(jié)點,將一級模糊節(jié)點的父節(jié)點的子子節(jié)點中的所有普通節(jié)點均鏈接到當前一級模糊節(jié)點下,將二級模糊節(jié)點的祖父節(jié)點的子子子節(jié)點中的所有普通節(jié)點均鏈接到當前二級模糊節(jié)點下,并令作為葉子節(jié)點的一級模糊節(jié)點儲存有同父的所有兄弟普通節(jié)點所儲存的數(shù)據,作為葉子節(jié)點的二級模糊節(jié)點儲存有同祖父的所有兄弟普通節(jié)點所儲存的數(shù)據,以生成所述預設數(shù)據庫。9.根據權利要求6所述的裝置,其特征在于,所述匹配單元通過如下方式判斷是否為模糊查找: 如果所述待檢索信息中包括模糊通配符,則當所述查找進行到所述模糊通配符的位置處時,判斷為此時進行模糊查找。10.根據權利要求6所述的裝置,其特征在于,所述輸出單元用于: 輸出所查找到的葉子節(jié)點中所存儲的數(shù)據。
【文檔編號】G06F17/30GK105843882SQ201610161559
【公開日】2016年8月10日
【申請日】2016年3月21日
【發(fā)明人】王乙丁
【申請人】樂視網信息技術(北京)股份有限公司
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
当涂县| 永昌县| 化隆| 内乡县| 刚察县| 老河口市| 获嘉县| 凌源市| 玉田县| 疏勒县| 抚顺县| 五家渠市| 怀远县| 汨罗市| 田林县| 西林县| 丹巴县| 龙岩市| 鄂尔多斯市| 白银市| 靖州| 中牟县| 翼城县| 栾川县| 西充县| 竹山县| 剑河县| 思茅市| 陆川县| 蓝山县| 海城市| 凤山市| 太保市| 巢湖市| 句容市| 临邑县| 固始县| 紫金县| 丹寨县| 集贤县| 双城市|