Contoh Algoritma Huffman

Table of Contents [Show]

    * Algoritma Huffman
    * Pohon Huffman
    * Frekuensi karakter
    * Pengkodean biner
    * Kompresi data

    Algoritma Huffman adalah algoritma kompresi data lossless yang menggunakan pohon Huffman untuk memetakan karakter ke dalam kode biner. Pohon Huffman dibangun berdasarkan frekuensi kemunculan karakter dalam data. Karakter yang muncul lebih sering akan memiliki kode biner yang lebih pendek, sedangkan karakter yang muncul lebih jarang akan memiliki kode biner yang lebih panjang.

    Pada tahap ini, setiap karakter dalam data akan diwakili oleh sebuah simpul (node) dalam pohon Huffman. Simpul-simpul dengan frekuensi kemunculan yang sama akan digabungkan menjadi satu simpul baru. Simpul-simpul yang telah digabungkan akan memiliki frekuensi kemunculan yang sama dengan jumlah frekuensi kemunculan kedua simpul yang digabungkan.

    Berikut adalah contoh data teks dengan frekuensi kemunculan karakternya:

    | Karakter | Frekuensi |
    |—|—|
    | a | 10 |
    | b | 5 |
    | c | 2 |

    Dari data tersebut, kita dapat membangun pohon Huffman sebagai berikut:

    “`
    a
    / \
    b c
    “`

    Pada pohon Huffman ini, karakter `a` memiliki kode biner `0`, karakter `b` memiliki kode biner `10`, dan karakter `c` memiliki kode biner `11`.

    Pada tahap ini, setiap karakter dalam data akan diubah menjadi kode binernya sesuai dengan pohon Huffman yang telah dibangun.

    Berikut adalah contoh data teks yang telah dikompresi menggunakan algoritma Huffman:

    “`
    abc
    “`

    Data teks ini akan diubah menjadi kode biner sebagai berikut:

    “`
    011100
    “`

    Pada tahap ini, kode biner data akan diubah kembali menjadi data aslinya sesuai dengan pohon Huffman.

    Berikut adalah contoh data teks yang telah didekode menggunakan algoritma Huffman:

    “`
    abc
    “`

    Kode biner `011100` akan diubah kembali menjadi data teks `abc` sebagai berikut:

    “`
    011100
    “`

    Algoritma Huffman memiliki beberapa kelebihan, antara lain:

    * Dapat mencapai kompresi data yang tinggi
    * Algoritma yang sederhana dan mudah diimplementasikan
    * Dapat digunakan untuk mengompres berbagai jenis data

    Namun, algoritma Huffman juga memiliki beberapa kekurangan, antara lain:

    * Waktu kompilasi yang relatif lama
    * Tidak dapat mengompres data dengan format kompleks

    Algoritma Huffman adalah algoritma kompresi data yang efektif dan efisien. Algoritma ini dapat digunakan untuk mengompres berbagai jenis data, termasuk teks, gambar, dan audio.

    Contoh Algoritma Huffman dalam video berikut

    Contoh Algoritma Huffman

    See Also

    0 Komentar