Huffman ağacı ve maksimum derinlik


9

Her sembolün frekanslarını bilmek, Huffman algoritmasını uygulamadan ağacın maksimum yüksekliğini belirlemek mümkün müdür? Bu ağaç yüksekliğini veren bir formül var mı?


1
Birkaç örnekle oynamayı deneyin ve yararlı bir kriter bulabileceğinizi görün. Sorunuzu cevaplamaya çalışsaydım bunu yapardım, ama muhtemelen kendiniz yapmanız daha iyi ...
Yuval Filmus

Evet, zaten çok sayıda örnekle denedim, ancak sembollerin sayısının asimptotik bir sınırı, fonksiyonu gibi bir
literal ifade arıyorum

1
Sembol sayısı açısından , bir yandan , diğer yandan daha iyi bir şey . n1log2n
Yuval Filmus

Afedersiniz. Sembol sayısını ve sıklıklarını düşünüyordum. Örneğin, tüm semboller arasında en düşük frekansa bakarak maksimum derinliği vermek mümkün olabilir? derinliğe bağlı bir rought, ben sıkı bir cilt ile ilgileniyorum. n1
user7060

Ben bakmaya çalışırdım ve derinliğine bağlı olup olmadığını görmek. Ayrıca, gerçek algoritmaya karşılık gelen özyineleme bulmaya çalışabilir ve size bir şey verip vermediğini görebilirsiniz. maxlog2pi
Yuval Filmus

Yanıtlar:


2

Huffman kodlaması (asimptotik olarak) dizinin entropisinin bir bitine girer. Bu , sembol frekanslarınızın entropisini hesaplarsanız, kodunuzun ortalama uzunluğunun (yani yüksekliğinin) bir bitinde (asimptotik olarak) olacağınız anlamına gelir . Bu ortalamayı en uzun uzunluğu (ortalama olarak) bağlamak için veya determinitik sınırlar elde etmek için kombinatoryal yöntemleri kullanabilirsiniz .


0

Patolojik durum, sıralanan sembol frekansının Fibonacci dizisininkine benzemesi olabilir. N: = sembol sayısı. N> 2 için, mümkün olan maksimum yükseklik: N-1. N == 1 veya 2: 1 için


1
Sorunun sorduğu şey bu değil.
Tom van der Zanden

Aslında. Soru, en kötü durum hakkında konuşurken herhangi bir dava ister.
Raphael
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.