سورس کد فشرده سازی و کدگذاری هافمن در سی پلاس پلاس

0

سورس کد فشرده سازی و کدگذاری هافمن در سی پلاس پلاس را برای شما دوستان آماده کرده ایم

چگالی هر کاراکتر را محاسبه میکنیم (تعداد دفعات حضور کاراکتر در متن مورد نظر).
دو کاراکتر با کمترین میزان تکرار (چگالی) را انتخاب میکنیم.
کاراکتر های مرحله ۲ را با کاراکتر جدیدی که دارای چگالی برابر با مجموع چگالی دو کاراکتر فوق است جایگزین میکنیم.
تا زمانی که فقط یک کاراکتر باقی مانده باشد، به مرحله ۲ میرویم.
از عملیات فوق یک درخت حاصل می شود، بر روی این درخت هر مسیر به سمت چپ با ۰ و هر مسیر به سمت راست با ۱ وزن دهی میشود.
کد هر کاراکتر با کنار هم گذاشتن وزن ها از ریشه تا آن کاراکتر به دست می آید

 

اشتراک:

نظر خود را بیان کنید