亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

中文字典搜索引擎及在中文字典中快速定位字的方法

文檔序號:6447317閱讀:211來源:國知局
專利名稱:中文字典搜索引擎及在中文字典中快速定位字的方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種中文字典搜索引擎及在中文字典中快速定位字的方法。
背景技術(shù)
對文字的搜索技術(shù),常見有遍歷和折半查找等技術(shù)。在中文字詞的搜索技術(shù)中,一般用遍歷等方法,即一條一條詞目進(jìn)行對比查找。
這種搜索方法隨機(jī)性強(qiáng),采用簡單的算法則需要相當(dāng)?shù)臅r間方可獲得結(jié)果,而采用復(fù)雜的方法又對處理的效率和內(nèi)存空間需求也相當(dāng)大。因此,對于中等規(guī)模的中文字詞數(shù)據(jù)量的搜索應(yīng)用,如中文字典,這種方法便不適用了??傊?,采用現(xiàn)的搜索方法在中文字典中定位文字時,速度均比較慢,從而導(dǎo)致效率低下。

發(fā)明內(nèi)容
本發(fā)明提供一種中文字典搜索引擎及在中文字典中快速定位字的方法,以解決現(xiàn)有技術(shù)在中文字典中定位字時存在效率低的問題。
為解決上述問題,本發(fā)明提供以下技術(shù)方案一種在中文字典中快速定位字的方法,所述中文字典中的中文字采用GB2312/GBK編碼;該方法包括如下步驟A、建立中文字典內(nèi)中文字的GB2312/GBK編碼與該中文字在所述中文字典中相對于中文字典起始位置的字典內(nèi)偏移量之間的對應(yīng)關(guān)系;B、根據(jù)輸入的中文字的GB2312/GBK編碼查詢所述對應(yīng)關(guān)系得到對應(yīng)的字典內(nèi)偏移量;C、根據(jù)中文字典的起始存儲位置和所述字典內(nèi)偏移量直接在該中文字典中定位所述輸入的中文字。
一種在中文字典中快速定位字的方法,所述中文字典中的中文字采用GB2312/GBK編碼;該方法包括如下步驟A、將中文字典內(nèi)中文字相對于該中文字典的起始位置的字典內(nèi)偏移量,按GB2312/GBK編碼表和對應(yīng)中文字的GB2312/GBK編碼順序保存以形成索引表;B、根據(jù)輸入中文字的編碼中第一字節(jié)所表示的GB2312/GBK表編號和第二字節(jié)所表示的該中文字在GB2312/GBK表中的行號和列號,計算出該中文字所對應(yīng)的字典內(nèi)偏移量在所述索引表中的位置,并從該位置讀取字典內(nèi)偏移量;C、根據(jù)中文字典的起始存儲位置和所述字典內(nèi)偏移量直接在該中文字典中定位所述輸入的中文字。
一種中文字典搜索引擎,用于從所述中文字典中快速定位輸入的中文字,所述中文字典內(nèi)的中文字采用GB2312/GBK編碼;其特征在于包括第一模塊,用于建立和保存中文字典內(nèi)中文字的GB2312/GBK編碼與該中文字在所述中文字典中相對于中文字典起始位置的字典內(nèi)偏移量之間的對應(yīng)關(guān)系;第二模塊,用于接收輸入的中文字,并利用該中文字的GB2312/GBK編碼從所述第一模塊得到對應(yīng)的字典內(nèi)偏移量;第三模塊,用于根據(jù)中文字典的起始存儲位置和所述字典內(nèi)偏移量,直接在該中文字典中定位所述輸入的中文字并輸出。
所述第二模塊包括第一單元,用于根據(jù)輸入的中文字的第一字節(jié)所表示的GB2312/GBK表編號和所述索引表的起始位置,計算出該中文字所在的GB2312/GBK表中第一個中文字的編碼在所述索引表中的起始位置;第二單元,用于根據(jù)所述輸入的中文字的第二字節(jié)所表示的該中文字在GB2312/GBK表中的行號和列號,計算出該中文字相對于GB2312/GBK表中第一個字的表內(nèi)偏移量;第三單元,根據(jù)第一單元和第二單元的結(jié)果確定出該中文字的編碼在索引表的位置,并讀取字典內(nèi)偏移量。
本發(fā)明將中文字典內(nèi)中文字相對于該中文字典的起始位置的字典內(nèi)偏移量,按GB2312/GBK編碼表和對應(yīng)中文字的GB2312/GBK編碼順序保存以形成索引表,根據(jù)輸入中文字的GB2312/GBK編碼來查詢到對應(yīng)的字典內(nèi)偏移量,最后根據(jù)字典內(nèi)偏移量和中文字典的起始位置來定位中文字,因而,使每個字詞的搜索時間基本固定可控,不僅定位中文字的時間短和效率高,而且在定位過程中占用的資源少,可節(jié)省內(nèi)存及存儲器空間。


圖1、圖2為本發(fā)明中兩種索引表的示意圖;圖3、圖4分別為采用圖1、圖2所示索引表實現(xiàn)字定位的流程圖。
圖5為本發(fā)明的中文字典搜索引擎的結(jié)構(gòu)框圖。
具體實施例方式
本發(fā)明通過采用以中文字的GB2312或GBK編碼排序方式從中文字典中定位輸入的中文字。其核心思想是將中文字典內(nèi)中文字相對于該中文字典的起始位置的字典內(nèi)偏移量形成索引表,根據(jù)輸入中文字的GB2312/GBK編碼來從索引表中獲取該中文字對應(yīng)的字典內(nèi)偏移量,最后根據(jù)字典內(nèi)偏移量和中文字典的起始位置來直接定位中文字。
漢字的GBK編碼和GB2312編碼都是一種國家制定的中文編碼表,由兩個字節(jié)描述一個漢字。GBK是GB2312的擴(kuò)展編碼。本實施例主要以GBK編碼為例進(jìn)行說明。
基本GBK表格式如下CC0 1 2 3 4 5 6 7 8 9 A B C D E F4藹 藺 藼 藽 藾 蘀 蘁 蘂 蘃 蘄 蘆 蘇 蘈 蘉 蘊(yùn) 蘋5蘌 蘍 蘎 蘏 蘐 蘒 蘓 蘔 蘕 蘗 蘘 蘙 蘚 蘛 蘜 蘝6蘞 蘟 蘠 蘡 蘢 蘣 蘤 蘥 蘦 蘨 麋 蘫 蘬 蘭 蘮 蘯
7蘰 蘱 蘲 蘳 蘴 蘵 蘶 蘷 蘹 蘺 蘻 蘽 蘾 蘿 虀8虁 虂 虃 虄 虅 虆 虇 虈 虉 虊 虌 虒 虓 處 虖9虗 虘 虙 虛 虜 虝 號 虠 虡 虣 虤 虥 虦 虧 虨 虩A虪 獺 撻 蹋 踏 胎 苔 抬 臺 泰 酞 太 態(tài) 汰 坍 攤B貪 癱 灘 壇 檀 痰 潭 談 坦 毯 袒 碳 探 嘆 炭C湯 塘 搪 堂 棠 膛 唐 糖 倘 躺 淌 趟 燙 掏 濤 滔D絳 萄 桃 逃 淘 陶 討 套 特 藤 騰 疼 謄 梯 剔 踢E銻 提 題 蹄 啼 體 替 嚏 惕 涕 剃 屜 天 添 填 田F甜 恬 舔 腆 挑 條 迢 眺 跳 貼 鐵 帖 廳 聽 烴中文字GBK編碼為兩個字節(jié),其中第一字節(jié)為該表(Table)的編號,其范圍為81~FE;第二字節(jié)的高四位為行(Row)標(biāo)號,其范圍為4~F,第二字節(jié)的低四位為列(Column)標(biāo)號,其范圍為0~F。例如表中“譚”字的編碼為CCB7。
對于GBK一共有FE-81+1=254-129+1=126個表,每個表有F-4+1=15-4+1=12行,每個表有F-0+1=15-0+1=16列。因此,每個表包含16(列)×12(行)=192個漢字,總共有126(表)×192(字)=24192字。
字典中的文字順序可以隨意排列。只是這個字后的詞,必須僅跟其后,以便在定位到第一個字時,能夠快速的查詢到以該字開頭的詞。如人人民人員阿阿姨阿妹在本實施例中,索引表的建立可以采用兩種方式(但不限于兩種)一種方式是采用中文字典內(nèi)中文字的GBK編碼與該中文字在所述中文字典中相對于中文字典起始位置的字典內(nèi)偏移量之間的對應(yīng)關(guān)系,將中文字的GBK編碼作為索引。
如圖1所示,在索引表中,中文字的GBK編碼按升序排列,中文字典中排列的中文字相對于該字典的起始位置的偏移量占用4個字節(jié)。如圖中所示,GBK表的第一個表即編號為“81”的GBK表在索引表的最前面,該GBK中的字按行的先后順序排列。如表開始位置的索引編碼為“8140”,即代表81號GBK表中的第一個字,該編碼對應(yīng)的是該字在中文字典中相對于字典起始位置的偏移量;開始位置之后的編碼為“8411”,即代表81號GBK表中的第二個字,以此類推。
在獲取該中文字對應(yīng)的字典內(nèi)偏移量時根據(jù)輸入的中文字的GBK編碼來從索引表中查詢到對應(yīng)的偏移量。
第二種方式是將中文字典內(nèi)中文字相對于該中文字典的起始位置的字典內(nèi)偏移量,按GBK編碼表和對應(yīng)中文字的GBK編碼順序保存來建立索引表。
如圖2所示,在索引表中,字典內(nèi)偏移量的排列順序與中文字的GBK編碼升序排列相對應(yīng)。如圖中所示,索引表從開始位置起的連續(xù)4個字節(jié)保存的是GBK表的第一個表即編號為“81”的GBK表中的第一個字(即GBK編碼為“8410”)對應(yīng)的字典內(nèi)偏移量,在之后的連續(xù)4個字節(jié)為第二個字對應(yīng)的偏移量。以此類推。
在建立索引表過程中,如果某一個GBK編碼之后的編碼所代表的字不在中文字典中,則在圖1的索引表中將相應(yīng)位置的編碼置空,在圖2所示的索引表中將相應(yīng)位置的字典內(nèi)偏移量置空。置空是指設(shè)置特定的與其他編碼或字典內(nèi)偏移量不同的標(biāo)記。
因此,根據(jù)索引表的不同,字定位的實現(xiàn)有所有不同。采用圖1所示索引表實現(xiàn)字定位的過程如圖3所示步驟1、建立中文字典內(nèi)中文字的GBK編碼與該中文字在所述中文字典中相對于中文字典起始位置的字典內(nèi)偏移量之間的對應(yīng)關(guān)系,如圖1所示。
步驟2、根據(jù)輸入的中文字的第一字節(jié)所表示的GBK表編號和所述索引表的起始位置,確定該中文字所在的GBK表中第一個中文字的編碼在所述索引表中的起始位置。
步驟3、根據(jù)所述輸入的中文字的第二字節(jié)所表示的該中文字在GBK表中的行號和列號,計算出該中文字相對于GBK表中第一個字的表內(nèi)偏移量。
步驟4、根據(jù)所述起始位置和所述表內(nèi)偏移量確定出該中文字的編碼在索引表的位置,并讀取字典內(nèi)偏移量。
步驟5、根據(jù)中文字典的起始存儲位置和所述字典內(nèi)偏移量直接在該中文字典中定位所述輸入的中文字。
為了能對空字符及時給予提示,在步驟4中,讀取字典內(nèi)偏移量之前判斷對應(yīng)的GBK編碼是否為空,如果是則結(jié)束定位并提示該輸入的中文字不在中文字典中,否則繼續(xù)步驟5。
采用圖2所示索引表實現(xiàn)字定位的過程如圖4所示步驟11、將中文字典內(nèi)中文字相對于該中文字典的起始位置的字典內(nèi)偏移量,按GBK編碼表和對應(yīng)中文字的GBK編碼順序保存以形成索引表;步驟12、根據(jù)輸入的中文字的第一字節(jié)所表示的GBK表編號和所述索引表的起始位置,確定該中文字所在的GBK表中的第一個中文字對應(yīng)的字典內(nèi)偏移量在所述索引表的起始位置;步驟13、根據(jù)所述輸入的中文字的第二字節(jié)所表示的該中文字在GBK表中的行號和列號,計算出該中文字在GBK表中相對于第一個中文字的表內(nèi)偏移量;步驟14、根據(jù)所述第一個中文字對應(yīng)的偏移量和所述表內(nèi)偏移量確定出該中文字對應(yīng)的字典內(nèi)偏移量在所述索引表中的位置,并讀取字典內(nèi)偏移量。
步驟15、根據(jù)中文字典的起始存儲位置和所述字典內(nèi)偏移量直接在該中文字典中定位所述輸入的中文字。
為了能對空字符及時給予提示,在步驟14讀取偏移量之前還判斷偏移量是否為空,如果是則結(jié)束定位并提示該輸入的中文字不在中文字典中,否則繼續(xù)步驟15。
從以下可看出,兩者的區(qū)別在于索引表和在索引表中獲取偏移量有所區(qū)別。對表的對于圖1所示的索引表,主要根據(jù)是根據(jù)輸入的中文字的GBK編碼來定位該編碼在索引表的位置,對于圖2所示的索引表,主要根據(jù)輸入的中文字的GBK編碼來定位對應(yīng)的偏移量在索引表中的位置。下面通過字典內(nèi)偏移量占用4字節(jié)(byte)空間來說明。
(1)根據(jù)輸入的中文字的GBK編碼中第一字節(jié)編碼計算出該字所在GBK表的定位號7E(總表數(shù))-(FE-第一字節(jié)編碼)-1,其中以81為起始,F(xiàn)E為終結(jié),起始號81為0。
(2)輸入的中文字所在的GBK表在索引表中的起始位置定位號×192(每個表的字?jǐn)?shù))×N;對于圖1的索引,N為2,即每個字的GBK編碼的字節(jié)數(shù)(如果編碼與對應(yīng)的字典內(nèi)偏移量連續(xù)存放,即前兩個字節(jié)為編碼,緊接著的為4個字節(jié)的字典內(nèi)偏移量,在這種情況下N就為2+4,即6個字節(jié));對于圖2,N為4,即每個字典內(nèi)偏移量占用的字節(jié)數(shù)。
(3)根據(jù)輸入的中文字的GBK編碼的第二字節(jié)計算出字的表內(nèi)偏移量[192(總字?jǐn)?shù))-(256-第二字節(jié)編碼(Hex))]×N,其中,256為最后字編碼(FF)+1;對于圖1的索引,N為2+4,即每個字的GBK編碼的字節(jié)數(shù);對于圖2,N為4,即每個字典內(nèi)偏移量占用的字節(jié)數(shù)。
(4)將GBK表在索引表中的起始位置加上表內(nèi)偏移量即可獲得輸入的中文字對應(yīng)的字典內(nèi)偏移量。
根據(jù)上述的描述,本發(fā)明同樣可以得到從中文字典中快速定位輸入的中文字的中文字典搜索引擎,該搜索引擎與計算機(jī)裝置中處理器、存儲器和輸入設(shè)備部件實現(xiàn)中文字定位。如圖5所示,中文引擎包括
第一模塊,用于建立和保存中文字典內(nèi)中文字的GB2312/GBK編碼與該中文字在所述中文字典中相對于中文字典起始位置的字典內(nèi)偏移量之間的對應(yīng)關(guān)系;第二模塊,用于接收輸入的中文字,并利用該中文字的GB2312/GBK編碼從所述第一模塊得到對應(yīng)的字典內(nèi)偏移量;第三模塊,用于根據(jù)中文字典的起始存儲位置和所述字典內(nèi)偏移量,直接在該中文字典中定位所述輸入的中文字并輸出。
上述第二模塊包括第一單元,用于根據(jù)輸入的中文字的第一字節(jié)所表示的GB2312/GBK表編號和所述索引表的起始位置,計算出該中文字所在的GB2312/GBK表中第一個中文字的編碼在所述索引表中的起始位置;第二單元,用于根據(jù)所述輸入的中文字的第二字節(jié)所表示的該中文字在GB2312/GBK表中的行號和列號,計算出該中文字相對于GB2312/GBK表中第一個字的表內(nèi)偏移量;第三單元,根據(jù)第一單元和第二單元的結(jié)果確定出該中文字的編碼在索引表的位置,并讀取字典內(nèi)偏移量。
同樣,另外一種中文字典搜索引擎(其結(jié)構(gòu)參考圖5)包括第一模塊,用于按GB2312/GBK編碼表和對應(yīng)中文字的GB2312/GBK編碼順序,保存中文字典內(nèi)中文字相對于該中文字典的起始位置的字典內(nèi)偏移量;第二模塊,用于接收輸入的中文字,并根據(jù)輸入中文字的編碼中第一字節(jié)所表示的GB2312/GBK表編號和第二字節(jié)所表示的該中文字在GB2312/GBK表中的行號和列號,計算出該中文字所對應(yīng)的字典內(nèi)偏移量在所述第一模塊中的位置,并從第一模塊讀取字典內(nèi)偏移量;第三模塊,用于根據(jù)中文字典的起始存儲位置和所述字典內(nèi)偏移量,直接在該中文字典中定位所述輸入的中文字并輸出。
所述第二模塊包括第一單元,用于根據(jù)輸入的中文字的第一字節(jié)所表示的GB2312/GBK表編號和所述索引表的起始位置,計算出該中文字所在的GB2312/GBK表中第一個中文字的編碼在所述索引表中的起始位置;第二單元,用于根據(jù)所述輸入的中文字的第二字節(jié)所表示的該中文字在GB2312/GBK表中的行號和列號,計算出該中文字相對于GB2312/GBK表中第一個字的表內(nèi)偏移量;第三單元,根據(jù)第一單元和第二單元的結(jié)果確定出該中文字的編碼在索引表的位置,并讀取字典內(nèi)偏移量。
對采用GB2312編碼的中文字的定位處理與上述方法同理,不再贅述。
顯然,本發(fā)明的索引表還可以是其他形式,因此,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進(jìn)行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若對本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。
權(quán)利要求
1.一種在中文字典中快速定位字的方法,所述中文字典中的中文字采用GB2312/GBK編碼;其特征在于,該方法包括如下步驟A、建立中文字典內(nèi)中文字的GB2312/GBK編碼與該中文字在所述中文字典中相對于中文字典起始位置的字典內(nèi)偏移量之間的對應(yīng)關(guān)系;B、根據(jù)輸入的中文字的GB2312/GBK編碼查詢所述對應(yīng)關(guān)系得到對應(yīng)的字典內(nèi)偏移量;C、根據(jù)中文字典的起始存儲位置和所述字典內(nèi)偏移量直接在該中文字典中定位所述輸入的中文字。
2.如權(quán)利要求1所述的方法,其特征在于,所述對應(yīng)關(guān)系存儲在一個索引表中,將GB2312/GBK編碼作為索引并按編碼升序排列。
3.如權(quán)利要求2所述的方法,其特征在于,步驟B包括如下步驟根據(jù)輸入的中文字的第一字節(jié)所表示的GB2312/GBK表編號和所述索引表的起始位置,確定該中文字所在的GB2312/GBK表中第一個中文字的編碼在所述索引表中的起始位置;根據(jù)所述輸入的中文字的第二字節(jié)所表示的該中文字在GB2312/GBK表中的行號和列號,計算出該中文字相對于GB2312/GBK表中第一個字的表內(nèi)偏移量;根據(jù)所述起始位置和所述表內(nèi)偏移量確定出該中文字的編碼在索引表的位置,并讀取字典內(nèi)偏移量。
4.如權(quán)利要求3所述的方法,其特征在于,在讀取字典內(nèi)偏移量之前還判斷對應(yīng)的GB2312/GBK編碼是否為空,如果是則結(jié)束定位并提示該輸入的中文字不在中文字典中,否則繼續(xù)后續(xù)步驟。
5.一種在中文字典中快速定位字的方法,所述中文字典中的中文字采用GB2312/GBK編碼;其特征在于,該方法包括如下步驟A、將中文字典內(nèi)中文字相對于該中文字典的起始位置的字典內(nèi)偏移量,按GB2312/GBK編碼表和對應(yīng)中文字的GB2312/GBK編碼順序保存以形成索引表;B、根據(jù)輸入中文字的編碼中第一字節(jié)所表示的GB2312/GBK表編號和第二字節(jié)所表示的該中文字在GB2312/GBK表中的行號和列號,計算出該中文字所對應(yīng)的字典內(nèi)偏移量在所述索引表中的位置,并從該位置讀取字典內(nèi)偏移量;C、根據(jù)中文字典的起始存儲位置和所述字典內(nèi)偏移量直接在該中文字典中定位所述輸入的中文字。
6.如權(quán)利要求5所述的方法,其特征在于,步驟B包括如下步驟根據(jù)輸入的中文字的第一字節(jié)所表示的GB2312/GBK表編號和所述索引表的起始位置,確定該中文字所在的GB2312/GBK表中的第一個中文字對應(yīng)的字典內(nèi)偏移量在所述索引表的位置;根據(jù)所述輸入的中文字的第二字節(jié)所表示的該中文字在GB2312/GBK表中的行號和列號,計算出該中文字在GB2312/GBK表中相對于第一個中文字的表內(nèi)偏移量;根據(jù)所述第一個中文字對應(yīng)的偏移量和所述表內(nèi)偏移量確定出該中文字對應(yīng)的字典內(nèi)偏移量在所述索引表中的位置,并讀取字典內(nèi)偏移量。
7.如權(quán)利要求3所述的方法,其特征在于,在讀取偏移量之前還判斷偏移量是否為空,如果是則結(jié)束定位并提示該輸入的中文字不在中文字典中,否則繼續(xù)后續(xù)步驟。
8.一種中文字典搜索引擎,用于從所述中文字典中快速定位輸入的中文字,所述中文字典內(nèi)的中文字采用GB2312/GBK編碼;其特征在于包括第一模塊,用于建立和保存中文字典內(nèi)中文字的GB2312/GBK編碼與該中文字在所述中文字典中相對于中文字典起始位置的字典內(nèi)偏移量之間的對應(yīng)關(guān)系;第二模塊,用于接收輸入的中文字,并利用該中文字的GB2312/GBK編碼從所述第一模塊得到對應(yīng)的字典內(nèi)偏移量;第三模塊,用于根據(jù)中文字典的起始存儲位置和所述字典內(nèi)偏移量,直接在該中文字典中定位所述輸入的中文字并輸出。
9.如權(quán)利要求8所述的中文字典搜索引擎,其特征在于,所述第二模塊包括第一單元,用于根據(jù)輸入的中文字的第一字節(jié)所表示的GB2312/GBK表編號和所述索引表的起始位置,計算出該中文字所在的GB2312/GBK表中第一個中文字的編碼在所述索引表中的起始位置;第二單元,用于根據(jù)所述輸入的中文字的第二字節(jié)所表示的該中文字在GB2312/GBK表中的行號和列號,計算出該中文字相對于GB2312/GBK表中第一個字的表內(nèi)偏移量;第三單元,根據(jù)第一單元和第二單元的結(jié)果確定出該中文字的編碼在索引表的位置,并讀取字典內(nèi)偏移量。
10.一種中文字典搜索引擎,用于從所述中文字典中快速定位輸入的中文字,所述中文字典內(nèi)的中文字采用GB2312/GBK編碼;其特征在于包括第一模塊,用于按GB2312/GBK編碼表和對應(yīng)中文字的GB2312/GBK編碼順序,保存中文字典內(nèi)中文字相對于該中文字典的起始位置的字典內(nèi)偏移量;第二模塊,用于接收輸入的中文字,并根據(jù)輸入中文字的編碼中第一字節(jié)所表示的GB2312/GBK表編號和第二字節(jié)所表示的該中文字在GB2312/GBK表中的行號和列號,計算出該中文字所對應(yīng)的字典內(nèi)偏移量在所述第一模塊中的位置,并從第一模塊讀取字典內(nèi)偏移量;第三模塊,用于根據(jù)中文字典的起始存儲位置和所述字典內(nèi)偏移量,直接在該中文字典中定位所述輸入的中文字并輸出。
11.如權(quán)利要求10所述的中文字典搜索引擎,其特征在于,所述第二模塊包括第一單元,用于根據(jù)輸入的中文字的第一字節(jié)所表示的GB2312/GBK表編號和所述索引表的起始位置,計算出該中文字所在的GB2312/GBK表中第一個中文字的編碼在所述索引表中的起始位置;第二單元,用于根據(jù)所述輸入的中文字的第二字節(jié)所表示的該中文字在GB2312/GBK表中的行號和列號,計算出該中文字相對于GB2312/GBK表中第一個字的表內(nèi)偏移量;第三單元,根據(jù)第一單元和第二單元的結(jié)果確定出該中文字的編碼在索引表的位置,并讀取字典內(nèi)偏移量。
全文摘要
本發(fā)明公開了一種在中文字典中快速定位字的方法,該方法為將中文字典內(nèi)中文字相對于該中文字典的起始位置的字典內(nèi)偏移量形成索引表,根據(jù)輸入中文字的GB2312/GBK編碼來從索引表中獲取該中文字對應(yīng)的字典內(nèi)偏移量,最后根據(jù)字典內(nèi)偏移量和中文字典的起始位置來直接定位中文字。本發(fā)明同時公開了一種中文字典搜索引擎。本發(fā)明通過采用以中文字的GB2312/GBK編碼排序方式從中文字典中定位輸入的中文字,不僅速度快,而且在定位過程中占用資源少。
文檔編號G06F17/30GK1632798SQ20041010404
公開日2005年6月29日 申請日期2004年12月31日 優(yōu)先權(quán)日2004年12月31日
發(fā)明者譚帥 申請人:北京中星微電子有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1