Ödev sorunumla ne yapacağımı anlamaya çalışıyorum. Java'daki mesajları kodlayacak ve çözecek bir Huffman Ağacı oluşturmaya çalışıyorum. Dizeler ve Frekans verdim.Huffman Ağacı Verilen Frekans ile Başlamak için nasıl karıştırın? Java
[a=10, b=15, c=12, e=3, nl=4, sp=13, t=1].
Ben Huffman Ağacı ile iki düşük Frekansları alıp ebeveyn olarak kendi Sıklığı toplamı ile bir ağaca bunları yapmak biliyoruz. Bir Öncelik Kuyruğu kullanarak, tüm Frekansı buna ekleyebileceğimi ve en düşük 2 Frekansı çıkarmak için remove()
yöntemini kullanabileceğini anlıyorum. Daha sonra, her ikisinin de Ağırlığını almak için onları bir araya toplayın, ardından bu Ağırlık'yı Sıraya yerleştirin ve tekrarlayın.
son Ağacı Hatta Ağacı Frekans ağacı oluşturmak ve görüntülemek mümkün olacak bir Huffman Ağacı kod uygulamak başlamak için tam olarak nasıl emin değilim
[58=root, root.left = 33, root.right = 25]
[33.left = 18, 18.left = 8, 8.left = 4]
ağırlığını tutmak gerekir. Diğer kodlara bakıyorum ve hepsinin Akışlı Giriş Kodu'ndan ya da benzerlerinden oluştuğu anlaşılıyor.
Gitmeme yardım etmek için herhangi bir yardım harika olurdu. Şimdiden teşekkürler! (Ön sipariş geçişi) Bu senin için
58
- 33
- - 18
- - - 8
- - - - 4
- - - - - 1:t
- - - - - 3:e
- - - - 4:nl
- - - 10:a
- - 15:b
- 25
- - 12:c
- - 13:sp
Teşekkür ederim. Yaptığı bir hata, henüz olmaması gereken yaprağın birini yazdırmasıdır. 10'dur: yazdırılan, 4: nl'den sonra yazdırılması gereken bir şey. – JavaStudent