當前位置:成語大全網 - 新華字典 - 詞典編碼的算法步驟

詞典編碼的算法步驟

步驟壹:開始的時候詞典包含所有可能的單字符,而當前前綴P是空的。

步驟二:當前字符C:=字符流中的下壹個字符。

步驟三:判斷P+C是否在詞典中。

如果是,則用C擴展P,即P=P+C

如果否,則

①輸出代表當前前綴P的碼字

②將前綴-字符串P+C添加到字典中

③令P:=C

步驟四:判斷字符流中是否還有字符需要編碼。

如果是,則返回到步驟二

如果不是,輸出代表當前前綴P的碼字,並結束 步驟壹:在開始譯碼時詞典包含所有可能的前綴根。

步驟二:cW:=碼字流中的第壹個碼字。

步驟三:輸出當前綴符串string.cW到字符流。

步驟四:先前碼字pW:=當前碼字cW.

步驟五:當前碼字cW:=碼字流中的下壹個碼字。

步驟六:判斷先前綴符串是否在詞典中。

如果“是”,則:1把當前綴符串string.cW輸出到字符流;2當前前綴p:=先前綴符串pW;3當前前綴符串string.cW的第壹個字符;4把綴符串P+C添加到詞典中。

如果“否”,則:1當前前綴p:=先前綴符串pW;2當前字符C:=當前綴符串pW的第壹個字符;3輸出綴符串P+C到字符流,然後把它添加到詞典中。

步驟七:判斷碼字流中是否還有碼字要譯。

如果“是”,就返回到步驟4,如果“否”,結束。