Visualisator Pengodean Huffman
Masukkan teks apa pun untuk langsung membangun pohon Huffman-nya, menghasilkan kode biner prefiks optimal untuk setiap karakter, dan melihat penghematan bit yang tepat dibanding pengodean ASCII tetap 8 bit. Klik karakter mana pun untuk menyorot simpul daunnya di pohon. Berjalan sepenuhnya di browser Anda - tanpa pendaftaran.
Enter any text to build its Huffman tree, generate optimal prefix-free codes for each character, and see the exact bit savings vs. fixed 8-bit ASCII encoding. All processing runs locally in your browser - your text never leaves your device.
Quick Examples
Mengapa menggunakan visualisator pengodean Huffman kami?
- Pembuatan pohon Huffman instan: tempelkan teks apa pun dan visualisator pengodean Huffman langsung membangun pohon kode prefiks optimal, tabel frekuensi, dan string bit terkode lengkap - tanpa menunggu.
- Visualisator pengodean Huffman online yang aman: seluruh pembangunan pohon dan pengodean berjalan sepenuhnya di browser Anda. Teks Anda tidak pernah meninggalkan perangkat Anda - sepenuhnya privat dan bisa dipakai offline.
- Pohon dan tabel kode interaktif: klik karakter mana pun di tabel frekuensi atau tabel kode untuk menyorot simpul daunnya di pohon Huffman. Lihat dengan tepat bagaimana panjang bit berkaitan dengan frekuensi karakter.
- 100 % gratis selamanya: visualisasikan pengodean Huffman untuk teks apa pun, sepenuhnya gratis. Tanpa akun, tanpa langganan, tanpa batas, dan tanpa iklan - pakai sebanyak yang Anda perlukan.
Apa itu pengodean Huffman?
Pengodean Huffman adalah algoritma kompresi data tanpa kehilangan data yang diciptakan David A. Huffman pada 1952. Algoritma ini memberi kode biner dengan panjang berbeda pada karakter sesuai frekuensinya - karakter yang lebih sering muncul mendapat kode lebih pendek, sedangkan karakter langka mendapat kode lebih panjang. Hasilnya adalah kode prefiks (tidak ada kode yang menjadi prefiks kode lain), sehingga string bit terkode dapat didekode secara tidak ambigu tanpa pemisah. Visualisator pengodean Huffman gratis kami membangun pohon Huffman optimal untuk teks masukan apa pun dan menampilkan penghematan bit yang tepat dibanding pengodean ASCII tetap 8 bit - semuanya lokal di browser Anda, tanpa pendaftaran.
Cara kerja visualisator pengodean Huffman kami
- Masukkan teks Anda: ketik atau tempelkan teks apa pun hingga 500 karakter. Gunakan contoh cepat untuk kasus klasik seperti «abracadabra» atau «the quick brown fox».
- Pembangunan pohon instan: klik «Visualisasikan Pohon Huffman» - visualisator menghitung frekuensi karakter, menyusun antrean prioritas, dan membangun pohon Huffman optimal sepenuhnya di browser Anda.
- Jelajahi hasilnya: tinjau tabel frekuensi, tabel kode, dan pohon SVG. Klik karakter mana pun untuk menyorot simpul daunnya. Salin tabel kode lengkap atau string bit terkode dengan satu klik.
Apa yang ditampilkan visualisator pengodean Huffman
- Tabel frekuensi: setiap karakter unik dengan jumlah kemunculan dan persentasenya dari total masukan - diurutkan berdasarkan frekuensi menurun.
- Tabel kode: kode biner prefiks optimal untuk setiap karakter, diurutkan berdasarkan panjang kode - kode lebih pendek untuk karakter lebih sering.
- Pohon Huffman: visualisasi SVG interaktif dari pohon biner - simpul internal menunjukkan frekuensi gabungan, simpul daun menunjukkan karakter dan frekuensinya. Sisi kiri diberi label 0 dan sisi kanan diberi label 1.
- String bit terkode: pengodean biner lengkap dari teks masukan Anda memakai kode Huffman yang dihasilkan, beserta total bit dan padanan dalam byte.
Keterbatasan penting pengodean Huffman
Visualisator pengodean Huffman menunjukkan kompresi teoretis hanya dari pengodean entropi. Format kompresi dunia nyata seperti GZIP dan Brotli menggabungkan pengodean Huffman dengan rujukan balik LZ77 (yang menghilangkan substring berulang sebelum pengodean entropi) sehingga mencapai kompresi jauh lebih besar pada teks umum. Selain itu, tabel kode Huffman itu sendiri harus dikirim bersama data terkompresi, yang menambah beban pada masukan pendek. Untuk masukan dengan distribusi karakter yang merata (semua karakter sama sering), pengodean Huffman tidak memberi keuntungan kompresi dibanding kode lebar tetap.
Pertanyaan yang Sering Diajukan
Visualisator pengodean Huffman membangun pohon Huffman optimal untuk teks masukan apa pun, menghasilkan kode biner prefiks untuk setiap karakter, dan menampilkan penghematan bit yang tepat dibanding pengodean ASCII tetap 8 bit. Visualisator pengodean Huffman online gratis kami berjalan sepenuhnya di browser Anda - tanpa pendaftaran dan teks Anda tidak pernah meninggalkan perangkat Anda.
Pengodean Huffman memberi kode biner lebih pendek pada karakter yang lebih sering muncul dan kode lebih panjang pada karakter langka. Karena karakter paling umum memakai lebih sedikit bit, total bit teks terkode lebih rendah daripada pengodean ASCII tetap 8 bit. Penghematannya bergantung pada seberapa tidak meratanya distribusi frekuensi - teks yang sangat berulang terkompresi lebih baik daripada teks dengan distribusi karakter yang merata.
Ya. Visualisator pengodean Huffman berjalan sepenuhnya di browser Anda - pembangunan pohon, penghitungan frekuensi, dan pengodean dilakukan secara lokal memakai JavaScript. Tidak ada teks yang dikirim ke server mana pun. Masukan Anda tidak pernah meninggalkan perangkat Anda.
Ya. Visualisator pengodean Huffman 100 % gratis, tanpa pendaftaran, tanpa langganan, dan tanpa batas. Visualisasikan pengodean Huffman untuk sebanyak mungkin teks yang Anda perlukan.
Visualisator pengodean Huffman hanya menampilkan tahap pengodean entropi dari kompresi. Format kompresi nyata seperti GZIP dan Brotli lebih dulu menerapkan rujukan balik LZ77 untuk menghilangkan substring yang berulang, lalu menerapkan pengodean Huffman pada hasilnya. Kombinasi LZ77 + Huffman jauh lebih efektif daripada Huffman saja, terutama untuk teks dengan kata dan frasa yang berulang.
Kode prefiks (disebut juga kode bebas prefiks) adalah kode yang tidak memiliki kata kode yang menjadi prefiks kata kode lain. Sifat ini memungkinkan string bit didekode secara tidak ambigu tanpa karakter pemisah antarkode. Kode Huffman selalu bersifat prefiks berdasarkan konstruksinya - struktur pohon menjaminnya karena setiap karakter adalah simpul daun, dan tidak ada daun yang menjadi leluhur daun lain.
Saat semua karakter muncul dengan frekuensi sama, pengodean Huffman menghasilkan kode dengan panjang sama atau hampir sama - memberi sedikit atau sama sekali tidak ada kompresi dibanding pengodean lebar tetap. Ini kasus terburuk untuk pengodean Huffman. Misalnya, jika masukan Anda berisi tepat satu kemunculan setiap karakter, pohon Huffman akan seimbang dan panjang kode rata-rata sekitar log₂(n) bit, dengan n adalah jumlah karakter unik.
Pohon Huffman dibangun dengan algoritma greedy: (1) Hitung frekuensi setiap karakter dan buat simpul daun untuk masing-masing. (2) Masukkan semua simpul daun ke antrean prioritas minimum yang diurutkan berdasarkan frekuensi. (3) Berulang kali ambil dua simpul dengan frekuensi terendah, buat simpul internal baru dengan frekuensi gabungannya sebagai induk, lalu masukkan kembali ke antrean. (4) Ulangi hingga tersisa satu simpul - akarnya. Setelah itu pohon ditelusuri dengan memberi 0 pada cabang kiri dan 1 pada cabang kanan.
Bisa. Visualisator pengodean Huffman bekerja dengan teks Unicode apa pun - alat ini menghitung frekuensi karakter pada tingkat titik kode Unicode. Namun rasio kompresi yang ditampilkan dibandingkan dengan pengodean ASCII 8 bit, yang hanya berlaku untuk teks ASCII. Untuk teks Unicode, pengodean lebar tetap sebenarnya adalah 16 atau 32 bit per karakter (UTF-16/UTF-32), sehingga penghematan nyatanya akan lebih besar lagi.