回覆列表
-
1 # 日衝資訊 黃
相關內容
- Java、Ruby、JavaScript等高階語言盛行,現在還有學習C的必要嗎?
- 有誰知道python,java,vb,C++誰更實用呢?
- 研一想轉向計算機方向該學習Java還是Python?
- 假設php的學習成本為1,那麼js、c、java、python、c++的學習成本分別為多少?
- 有python,java,C++基礎,剛要入門分散式系統的學習,如何系統的學習?
- 王者榮耀被比作Python,英雄聯盟則是Java,這描述合理麼?
- java和python在爬蟲方面的優勢和劣勢是什麼?
- Python,Java,C++/C等哪種語言更具有發展前景?
- 男26本科機械,想去培訓機構學軟體轉行,學java、前段還是Python好呢?
- 如果學大資料,最好學習哪種程式語言?是Java還是Python或者c++?
這個問題還挺不好回答的。因為不知道題主的意圖,也不清楚是否要考慮多音字的問題。可能是我想多了,在這裡我就給一個利用GB2312編碼表查詢拼音首字母的方案。
GB2312編碼GB2312編碼共收錄漢字6763個,其中一級漢字3755個,二級漢字3008個,另外還有682個全形字元。其中,一級漢字是按照拼音字母的順序排列的。可直接用編碼查詢拼音首字母。不過,二級漢字是按照偏旁部首排列的,沒法查,這部分漢字只能自己做一份對照表了。
一級漢字查詢根據GB2312編碼規則,可按下表查詢。
1601-1636 a1637-1832 b1833-2077 c2078-2274 d……(略)百度一下可以找到完整的編碼表。
二級漢字
Javascript的限制
Javascript是在瀏覽器上執行的,攜帶一份巨大的對照表可能嚴重影響網頁的下載速度。建議只對應一級漢字。另外,JS沒有編碼轉換函式,應儘量避免編碼轉換,實在不能避免的話,只能自己寫轉換函數了。網上雖有不少例子,都不是很可靠。要有個別編碼存在轉換錯誤的覺悟。
演算法的考慮
如果攜帶二級漢字對照表,則需要考慮提高查詢速度。二叉樹演算法是個不錯的選擇。