huffman-code

    0熱度

    2回答

    我試圖編碼和解碼C++中的Huffman編碼。我不確定我的問題在哪裏,我可以讀寫,但是當我解壓縮文件時,它會亂碼,所以我要麼不能正確編碼或解碼。 我認爲它是在我寫作和閱讀出現問題的文件時。所以這就是我必須編寫的編碼文件。首先,我都從我叫UMAP無序地圖bitcodes存儲到一個字符串: int i = 0, j = 0; string fullStr = ""; for (i = 0; i <

    2熱度

    1回答

    是否可以計算有多少個節點有任意的二叉樹?每葉的葉數和深度是已知的(實際上它是霍夫曼樹)。 我需要它以便能夠在實際構建樹之前爲樹分配所需的內存並避免以後的內存重新分配。

    2熱度

    2回答

    解碼時,我無法構建哈夫曼樹的結構。 現在我正在編碼的樹,如果它有子碼使前綴0,如果它沒有孩子使它1。 例如,像(a,b,c,d)樹會被編碼爲001a1b01c1d及其Huffman編碼是 00|01|10|11 注:|是爲清晰添加的,實際上並不是在頭中。 這裏的圖形形式的樹: /\ /\ /\ a b c d 現在,當我試圖重建使用001a1b01c1d樹,我有麻煩的問

    0熱度

    1回答

    好吧,所以我想做一個哈夫曼編碼/解碼項目atm。我有所有的壓縮工作,並試圖把bitstring作爲一個字節到輸出文件。所以我做了一個示例代碼來測試一個小例子,看看它是如何工作的。使用下面的代碼,我可以正確輸出前8位(「11100011」),但第二次我得到16位(「110001010101010」)。有人可以暗示我出錯的地方嗎?非常感謝你提前。 鑑於:string bitstring =「11100

    0熱度

    2回答

    那我米使用如下所示 foreach (bool bit in encoded) { tb2.Text = ((bit ? 1 : 0) + ""); } 如何修改上面的代碼的代碼,以獲得所需的全部串?我正在研究文本文件的Huffman壓縮。在完成這一步之後,我需要創建並存儲二進制文件中的位串。請告訴我更多的過程。 Thnx提前。

    1熱度

    1回答

    我想知道我們可以採取多大程度的無損數據壓縮;我無法找到無損算法的在線模擬器來執行一些經驗測試。 我可以自己做一個,但不幸的是我在這段時間沒有足夠的時間;仍然我很好奇我有一個直覺,我將解釋。 讓我們只用兩個更流行的算法:Huffman Coding和Run-lenght Enconding。 讓我們假設我們有一個數量的字母A符號,並從該字母符號的任意長的順序:例如:現在 Alphabet = {A,

    2熱度

    2回答

    這是一個問題,出於好奇,關於我在JPG文件中看到的一些模式,當我在十六進制編輯器中查看它們時。我想這是關於JPEG文件格式的問題;爲什麼這部分不像其他的那樣是「隨機噪聲」呢?它應該是(霍夫曼編碼等等)。 這裏所說: 這136位(17個字節)圖形上顯示的是由Adobe公司的Photoshop產生了一些JPG文件(我不知道的Photoshop是隻應用,產生這些) : F7 5E EB DE FD D7

    2熱度

    2回答

    我正在寫一個使用霍夫曼算法來壓縮文本文件的程序。我已經通過將打印ASCII字符打印到文件來測試我的程序,並且它工作正常。但是,現在我必須實現使用位,我的程序不起作用。看起來好像我沒有閱讀或寫出正確的位。 這是我測試的結果: 在輸入文件中,我把abc的輸入文件壓縮。然後我解壓縮出來的是aaa。 下面是我如何讀取和寫入位的片段 class BitInput { istream& in; //

    3熱度

    1回答

    我想在MATLAB中使用霍夫曼編碼來壓縮灰度圖像,並嘗試了下面的代碼。 我使用了tif格式的大小爲512x512的灰度圖像。我的問題是,壓縮圖像的大小(壓縮碼字的長度)變得比未壓縮圖像的大小大。壓縮比率小於1. clc; clear all; A1 = imread('fig1.tif'); [M N]=size(A1); A = A1(:); count = [0:1:255]; %

    0熱度

    1回答

    在MATLAB中存儲霍夫曼代碼的最佳方式是什麼? 例如: letters = [1:6]; % Distinct symbols the data source can produce p = [.5 .125 .125 .125 .0625 .0625]; % Probability distribution [dict,avglen] = huffmandict(l