Mga computer, Information technology
Application mga halimbawa: mga code Huffman
Sa sandaling ito, ilang mga tao isipin ang tungkol sa ang katunayan, kung paano gumagana ang file compression. Kung ikukumpara sa nakaraang paggamit ng mga personal na computer ay naging lubhang mas madaling. At halos bawat taong nagtatrabaho kasama ang file system ay gumagamit ng mga file. Ngunit ilang mga tao sa tingin tungkol sa kung paano gumagana ang mga ito at kung ano ang batayan ay file compression. Ang pinakaunang bersyon ng prosesong ito ay ang Huffman code, at ginagamit ang mga ito ngayon sa isang iba't ibang mga popular na archivers. Maraming mga gumagamit ay hindi kahit na sa tingin kung gaano kadali file compression maganap at ito ay gumagana sa isang scheme. Sa artikulong ito tinitingnan namin ang kung paano ang compression ay kung ano ang mga nuances ng tulong bilis up at pasimplehin ang proseso ng pag-encode, pati na rin makita kung ano ang prinsipyo ng puno coding.
algorithm kasaysayan
Ang pinakaunang algorithm ng mahusay na coding ng mga elektronikong impormasyon ay naging isang code Huffman ipinanukalang kasing aga ng kalagitnaan ng ikadalawampu siglo, lalo sa 1952. Ito ay siya na sa sandaling ito ay ang batayang elemento ng ang karamihan ng mga programa na nilikha upang i-compress ang impormasyon. Sa sandaling ito, isa sa mga pinaka-popular na mga pinagkukunan gamit ang code na ito ay archive ZIP, ARJ, RAR at marami pang iba.
Ang prinsipyo ng mahusay na coding
Ang batayan ng Huffman algorithm ay nagsasama ng isang scheme na nagpapahintulot sa iyo upang palitan ang pinaka-kapani-paniwala, pinaka-madalas na nagaganap simbolo coded binary system. At ang mga taong ay mas karaniwan, pinalitan ng mas mahabang mga code. Pupunta mahabang Huffman code ay nangyayari lamang matapos ang sistema ay gumagamit ng lahat ng mga minimum na halaga. pamamaraan na ito ay nagbibigay-daan sa iyo upang i-minimize ang haba ng code para sa bawat simbolo ng ang orihinal na mensahe bilang isang buo.
Huffman code, halimbawa
Upang ilarawan ang mga algorithm, isaalang-alang ang isang graphical na variant ng konstruksiyon ng puno code. Upang gamitin ang paraan upang maging mabisa, ito ay kinakailangan upang linawin ang kahulugan ng ilang mga halaga na kinakailangan para sa ang konsepto ng proseso. Ang hanay ng mayorya ng mga nodes at arcs, na kung saan ay itinuro mula sa node sa node, na tinatawag graph. Tree mismo ay isang graph na may isang hanay ng mga tukoy na mga katangian:
- sa bawat node ay maaaring magsama ng hindi hihigit sa isa sa mga arcs;
- isa sa mga nodes ay dapat na ang mga ugat ng puno, iyon ay, hindi ito dapat maging bahagi ng arc sa lahat;
- kung ang stem simulan ang paglipat sa kahabaan ng mga arko, ang proseso ay dapat na payagan upang makakuha ng ganap na sa alinman sa mga node.
Isang algorithm para sa paggawa ng puno Huffman
Ang konstruksiyon ng Huffman code ay input mula sa mga titik ng alpabeto. Binuo ng isang listahan ng mga site na ay libre sa hinaharap puno code. Ang bigat ng bawat node sa listahan ay dapat na ang parehong bilang ang posibilidad ng paglitaw ng mga post titik naaayon sa node na ito. Sa kasong ito, ang isa na may bigat ng hindi bababa sa ay napili mula sa gitna ng ilang mga libreng sites ng puno hinaharap. Sa kasong ito, kung ang minimum rate ay sinusunod sa ilang mga site, maaari mong malayang pumili ng alinman sa mga pares.
Pagpapabuti ng kahusayan ng compression
Upang dagdagan ang compression kahusayan, ito ay kinakailangan sa panahon ng puno building code upang magamit ang lahat ng mga data sa ang posibilidad ng paglitaw ng mga titik sa isang partikular na file, naka-attach sa isang puno, at hindi payagan ang katunayan na ang mga ito ay nakakalat sa loob ng isang malaking bilang ng mga dokumento teksto. Kung ang pre-lakad sa pamamagitan ng file na ito, maaari mong agad na kalkulahin ang mga istatistika ng kung gaano kadalas may mga titik ng pasilidad napapailalim sa compression.
Acceleration ng proseso ng compression
Upang mapabilis ang algorithm, ang kahulugan ng ang mga titik ay dapat gawin nang hindi sa mga tuntunin ng ang posibilidad ng paglitaw ng isang partikular na sulat, at ang dalas ng paglitaw nito. Gamit ang algorithm ay nagiging mas madali, at gumagana sa mga ito nang mas mabilis. ito rin avoids ang operasyon kaugnay sa mga lumulutang-point division.
konklusyon
Huffman code - simple at pang-itinatag algorithm, na kung saan ay pa rin na ginagamit ng maraming mga mahusay na kilala mga programa at mga kumpanya. Pagiging simple at kaliwanagan ay maaaring makamit ang epektibong mga resulta compress ang mga file ng anumang dami at makabuluhang bawasan ang puwang sa disk imbakan. Sa ibang salita, ang Huffman algorithm - ay mahaba ay investigated at trabaho diagram na pangangailangan ng madaliang pagkilos ay hindi mababawasan ng araw na ito.
Similar articles
Trending Now