Ada beberapa hal yang harus diperhatikan ketika menggunakan VLC. Misalnya, kita ingin mengkodekan karakter “e” dengan bit “0”, “a” dengan “1”, dan “t” dengan “01”. Bagaimana kemudian kita mengkodekan kata “tea”? Dari system ini, maka kodenya adalah “0101”. Kalau dilihat lebih cermat, kode tersebut rancu, karena kode tersebut bisa juga dihasilkan dari kata “eat” , “eaea”, atau “tt”. Tentu saja kode yang demikian tidak dapat diterima karena dapat menyebabkan kesalahan/kehilangan informasi.
Untuk menghindari kerancuan ini kita dapat menggunakan kode prefix (prefix code). Pada kode prefiks, bit string untuk sebuah karakter tidak pernah akan menjadi prefiks (bagian pertama) dari bit string karakter lainnya. Sebagai contoh, pengkodean “e” dengan “0”, “a” dengan “10”, dan “t” dengan “ii” adalah kode prefiks. Maka, Kata “tea” akan dikodekan sebagai “11010”. Bit string ini adalah unik karena hanya kata “tea” tidak ada kata lain yang dapat dikodekan dengan hasil sama.
Pada pohon biner ini tidak ada leaf yang dapat menjadi ancestor (cabang) dari leaf lainnya. Sehingga, tidak ada kode dari karakter dapat menjadi prefiks dari kode karakter lainnya. Inilah yang dimaksud dengan kode prefiks.Kode prefiks dapat disusun dengan bantuan pohon biner, dimana karakter adalah label dari leaf (daun) dalam pohon biner tersebut. Garis dari tree dilabeli sedemikian hingga garis ke child kiri diberi bit ”0” dan ke child kanan dengan “1”. Bit string yang dipakai untuk menkodekan karakter adalah rangkaian label dari garis dalam lintasan yang unik dari root ke leaf yang dilabeli dengan karakter tersebut. Maka, pohon biner untuk contoh pengkodean “tea” yang telah dibahas adalah sebagai berikut.
Tidak ada komentar:
Posting Komentar