huffman-code

    0熱度

    1回答

    我想知道它是否重要的​​霍夫曼樹的方向。就像如果問題是爲A B C D E構造一個哈夫曼樹,並且每個都給出一個數字。 不要緊,如果我從上層開始,然後再往底部子節點等方面,只要我的標籤我的樹枝? 一樣,如果我不離開的是1,右是0呢?那還好嗎? 因爲我的老師和許多YouTube的例子以不同的方式解釋了它,不同的繪製,因此同樣的問題,將根據各自的定位不同的霍夫曼碼字,以及它們如何標記它。

    -1熱度

    1回答

    所以我做了一個函數來建立一個霍夫曼樹,它是按照頻率遞增的順序傳遞一個鏈表(在每個節點內分配一個值),但它似乎卡住時直到最後一個'非內部節點',就像鏈接列表中的一個節點,該鏈接列表中有一個字符開頭。 void build_tree(pqueue *list) { node *temp; node* parent_node; int min_1, min_2, ind = 0, counte

    1熱度

    1回答

    我使用下面的代碼構建了一個二叉樹(huffman樹),它按照升序鏈接列表的順序進行排序,但是當它結束運行時,它將打印位模式和一些應該在樹中的節點不是。 的基本上的代碼:在兩個最低節點 套父節點點分配父節點的內部頻率 點的列表的開始到現在是在節點2沿着它的原點(以避免重新使用節點) 插入新的父節點int o在樹 正確的位置獲取樹 打印的長度留所有節點列表 迭代,直到一個節點是左(其爲根目錄)。 任何

    0熱度

    1回答

    我有一個霍夫曼樹,我試圖打印出來屏幕,右分支水平延伸,左分支向下。我的功能如下。如果節點是中間節點之一,IsNodeNamSingleChar()只返回'*'。 void PrintBranches(Node * Top) { if(Top == NULL){ return; } if(Top->right != NULL){ printf("-

    1熱度

    4回答

    我想了解由'Rosetta代碼'用python編寫的霍夫曼代碼。以下是代碼的一小部分。 def encode(symb2freq): heap = [[wt, [sym, ""]] for sym, wt in symb2freq.items()] #What does this do? 我假設變量heap是一個列表。但是什麼是wt和sym?

    0熱度

    1回答

    我正在哈夫曼代碼中工作,目前我正處於編碼/解碼文本文件到二進制文件的階段。我有這樣的一段代碼及其所有相關數據(文字,frecuency,路線)沿檢索來自樹上的一個節點: EmptyString (string); while ((c = fgetc (nameTextFile)) != EOF) { nodeHuffmanTree = SearchHuffmanTree (rootHu

    -6熱度

    1回答

    我正在研究霍夫曼壓縮和ı需要寫一個文件作爲一點,它必須包括我的位在program.How可以在C++中做到這一點? 順便說一句,我試圖在網絡的每個解決方案,並提出許多形式,但我不能罰款任何

    1熱度

    2回答

    你好,我想實現規範哈夫曼編碼,但我不明白的wiki和Google指導, 我需要解釋更抽象... 我嘗試這樣做: 定期霍夫曼1.獲取列表編碼長度的代碼。像這樣: A - code: 110, length: 3. B - code: 111, length: 3. C - code: 10, length 2. D - code: 01, length 2. E - code: 00, le

    2熱度

    2回答

    我已經知道霍夫曼樹是一種用於優化前綴代碼的樹,但是除了霍夫曼樹以外,是否還有任何樹用於優化前綴代碼?如果有一些這樣的樹木,將他們的高度相同? 非常感謝!

    0熱度

    1回答

    我收到流關閉錯誤。我正在嘗試將一個huffman樹寫入一個文本文件,但每次運行它時,都會彈出錯誤消息,指出該流已關閉。有任何想法嗎? HuffmanTree Tree = new HuffmanTree(); HuffmanTree.HuffData[] freqTable = null; BufferedReader in = null; ObjectOutputS