توضیحات دوستان خیلی کامل بود و کار هافمن دقیقا همینه ولی اگه میخوایین تعداد کاراکتر ها هم کم بشه یه راه به نظرم اومد . با هافمن طبق برنامه دوستمون تبدیلش کنید. حالا هر 8 بیت رو به مبنای بیشتر از 2 -بستگی داره بخواین چقدر تعداد کاراکتر ها کم بشه - ببرید و بعد که خواستید متن اصلی رو بدست بیارید اول هر کاراکتر رو به مبنای 2 ببرید که صفر و یک های هافمن بدست بیاد و بعد طبق هافمن کد اصلی رو بدست بیارید در واقع این یه روش ترکیببی میشه هافمن برای کم کردن حجم و تغیر مبنا برای کاهش کاراکتر. اگه روش دوم رو نفهمید این توضیح رو هم اضافه کنم که : میشه گفت یه جور تغیر متغیر هست