KomputerTeknologi informasi

Huffman Kode: contoh aplikasi

Pada saat ini, beberapa orang berpikir tentang fakta, bagaimana file kompresi. Dibandingkan dengan penggunaan sebelumnya dari komputer pribadi telah menjadi jauh lebih mudah. Dan hampir setiap orang yang bekerja dengan sistem file menggunakan file. Tapi beberapa orang berpikir tentang bagaimana mereka bekerja dan atas dasar apa yang file kompresi. Versi pertama dari proses ini adalah kode Huffman, dan mereka digunakan hari ini di berbagai archivers populer. Banyak pengguna bahkan tidak berpikir betapa mudahnya file kompresi terjadi dan itu bekerja pada sebuah skema. Pada artikel ini kita melihat bagaimana kompresi yang bernuansa membantu mempercepat dan mempermudah proses encoding, serta melihat apa prinsip coding pohon.

algoritma sejarah

Algoritma pertama dari coding yang efisien dari informasi elektronik telah menjadi kode Huffman yang diusulkan pada awal pertengahan abad kedua puluh, yaitu pada tahun 1952. Dialah yang saat ini adalah elemen dasar dari mayoritas program yang dibuat untuk kompres informasi. Pada saat ini, salah satu sumber yang paling populer menggunakan kode ini adalah arsip ZIP, ARJ, RAR dan banyak lainnya. Juga, algoritma Huffman digunakan untuk kompres JPEG-gambar dan objek grafis lainnya. Nah, semua faks juga menggunakan coding modern, diciptakan pada tahun 1952. Terlepas dari kenyataan bahwa sejak penciptaan kode mengambil begitu banyak waktu untuk hari ini digunakan dalam berbagai membran baru dan peralatan jenis lama dan modern.

Prinsip coding yang efisien

Dasar dari algoritma Huffman termasuk skema yang memungkinkan Anda untuk mengganti paling kredibel, paling sering terjadi simbol kode biner sistem. Dan orang-orang yang kurang umum, diganti dengan kode lagi. Pergi kode Huffman lama terjadi hanya setelah sistem ini menggunakan semua nilai minimum. Teknik ini memungkinkan Anda untuk meminimalkan panjang kode untuk masing-masing simbol pesan asli secara keseluruhan. Titik penting adalah bahwa pada awal probabilitas coding terjadinya huruf harus sudah diketahui. Hal ini dari mereka akan siap dan pesan terakhir. Berdasarkan data ini, dilakukan pembangunan pohon kode Huffman, atas dasar yang akan diselenggarakan huruf proses encoding dalam arsip.

Kode Huffman, misalnya

Untuk menggambarkan algoritma, mempertimbangkan varian grafis dari pembangunan pohon kode. Untuk menggunakan metode ini untuk menjadi efektif, maka perlu untuk memperjelas definisi nilai-nilai tertentu yang diperlukan untuk konsep proses. Himpunan pluralitas node dan busur, yang diarahkan dari node ke node, disebut graph. Pohon itu sendiri adalah grafik dengan seperangkat sifat tertentu:

  • di setiap node dapat mencakup tidak lebih dari satu dari busur;
  • salah satu node harus menjadi akar pohon, yaitu, tidak harus menjadi bagian dari busur sama sekali;
  • jika batang mulai bergerak sepanjang busur, proses harus memungkinkan untuk mendapatkan benar-benar di salah satu node.

Ada juga hal, bagian dari kode Huffman sebagai daun pohon tersebut. Ini adalah simpul dari yang tidak harus pergi busur apapun. Jika dua node dihubungkan oleh busur, salah satunya adalah induk dari anak lainnya, tergantung pada dari mana simpul busur padam, dan apa yang disertakan. Jika dua node memiliki simpul orangtua yang sama, mereka disebut situs adik. Jika, di daun, daun dari simpul dari beberapa busur, maka disebut pohon biner. Hanya begitu adalah pohon Huffman. Keunikan dari pembangunan unit adalah bahwa bobot masing-masing orang tua adalah sama dengan jumlah dari bobot dari semua node anak-anaknya.

Algoritma untuk membangun pohon Huffman

Pembangunan kode Huffman adalah masukan dari huruf abjad. Dihasilkan daftar situs yang bebas di pohon kode masa depan. Berat setiap node dalam daftar harus sama dengan probabilitas terjadinya tulisan huruf yang sesuai dengan node ini. Dalam hal ini, orang yang memiliki berat yang paling dipilih dari antara beberapa situs gratis dari pohon masa depan. Dalam hal ini, jika harga minimum yang diamati di beberapa situs, Anda dapat dengan bebas memilih salah satu pasangan. Kemudian datang penciptaan node induk, yang harus berat sebanyak jumlah dari bobot dari pasangan node. Setelah itu, orang tua mengirim daftar dengan toilet gratis, dan anak-anak akan dihapus. Di busur ini indikator yang tepat, satu dan nol. Proses ini diulang sebanyak yang dibutuhkan untuk menjaga hanya node tunggal. Kemudian menuliskan digit biner dari atas ke bawah.

Meningkatkan efisiensi kompresi

Dalam rangka meningkatkan efisiensi kompresi, perlu selama kode bangunan pohon menggunakan semua data pada probabilitas terjadinya huruf dalam file tertentu, yang melekat pada pohon, dan tidak membiarkan fakta bahwa mereka tersebar di sejumlah besar dokumen teks. Jika pra-berjalan melalui file ini, Anda segera dapat menghitung statistik dari seberapa sering ada surat dari subjek fasilitas untuk kompresi.

Percepatan proses kompresi

Untuk mempercepat algoritma, definisi surat-surat harus dilakukan tidak dalam hal probabilitas terjadinya huruf tertentu, dan frekuensi kejadian tersebut. Dengan algoritma ini menjadi lebih mudah, dan bekerja dengan mereka jauh lebih cepat. itu juga menghindari operasi yang terkait dengan pembagian floating-point. Selain itu, bekerja pada mode ini, kode Huffman dinamis, atau lebih tepatnya algoritma itu sendiri tidak mengalami perubahan apapun. Hal ini terutama disebabkan oleh fakta bahwa probabilitas yang berbanding lurus dengan frekuensi. Perlu memperhatikan fakta bahwa berat akhir dari file, atau yang disebut simpul akar adalah sama dengan jumlah dari jumlah karakter dalam objek yang akan diperlakukan.

kesimpulan

Kode Huffman - sederhana dan lama mapan algoritma, yang masih digunakan oleh banyak program dan perusahaan terkenal. Its kesederhanaan dan kejelasan dapat mencapai hasil yang efektif kompres file volume apapun dan secara signifikan mengurangi ruang pada penyimpanan disk. Dengan kata lain, algoritma Huffman - telah lama diselidiki dan diagram kerja yang mendesak tidak dikurangi dengan hari ini. Dan dengan kemampuan untuk mengurangi ukuran file, mentransfernya melalui jaringan atau dengan cara lain lebih sederhana, cepat dan nyaman. Bekerja dengan algoritma, Anda dapat memampatkan informasi benar-benar tanpa membahayakan struktur dan kualitas, tetapi dengan efek yang maksimal untuk mengurangi file berat badan. Dengan kata lain, pengkodean dari kode Huffman telah dan tetap metode yang paling populer dan relevan mengkompresi ukuran file.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 id.unansea.com. Theme powered by WordPress.