درخت هافمن (Huffman Tree)، در ریاضیات (Mathematics)
انواع درخت (Tree) را در آموزش زیر شرح دادیم :
درخت هافمن (Huffman Tree) :
درخت هافمن یک درخت دودویی خاص است که در الگوریتم فشرده سازی هافمن (Huffman Coding) برای تولید کدهای بهینه با طول متغیر استفاده می شود. این الگوریتم با توجه به فراوانی (Frequency) هر نماد در داده، کدی کوتاه تر به نمادهای پرتکرار و کدی بلندتر به نمادهای کم تکرار اختصاص می دهد. برای ساخت درخت، یک صف اولویت از گره ها ایجاد کرده و هر بار دو گره با کمترین فراوانی را با هم ترکیب می کنیم تا یک گره والد جدید با مجموع فراوانی ها ساخته شود. این کار تا جایی ادامه می یابد که یک درخت واحد ایجاد شود. مسیرهای چپ و راست در این درخت، کدهای دودویی (مثلا 0 و 1) را می سازند.