الگوریتم فشرده سازی هافمن
      

 
Persian Forum Network - Try to be a Professional
صفحه نخست .:.  کاربران .:.   .:. تقویم  .:. کاربران آنلاین
خوش آمدید میهمان ( ورود | ثبت نام )
  /     /  


12»»

الگوریتم فشرده سازی هافمن باز / بسته
نویسنده
پیغام
ارسال شده در تاریخ سه شنبه 25 اردیبهشت 1386 - 12:15 بعدازظهر
تازه اول راهه

تازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راهه

گروه: کاربران
آخرین بازدید: جمعه 2 شهریور 1386 - 1:35 صبح
پست ها: 14, بازدید ها: 14
سلام
لطفا اگه اطلاعاتی راجع به الگوریتم هافمن دارید در اینجا ذکر کنید
هم راجع به الگوریتم و هم خود الگوریتم. اگه میشه توضیح کافی هم بدین



moyjon
پست شماره 13928
تبلیغات
ارسال شده در تاریخ سه شنبه 25 اردیبهشت 1386 - 10:18 بعدازظهر


Most Valuable Professional

Most Valuable Professional

گروه: مدیر انجمن (ویژه 2)
آخرین بازدید: دیروز 20:00:06
پست ها: 1,518, بازدید ها: 2,471
روش رمزگذاری هافمن (Huffman)

روش رمزگذاری Huffman به سال 1952 باز میگردد و به
عنوان بخشی از سایر روش های فشرده سازی (مانند
LZW) مورد استفاده قرار می گیرد. 



در روش رمزگذاری هافمن مجموعه ای از
سمبلها (مانند حروف در فایل متنی) مورد استفاده قرار می گیرند و با توجه به تکرار
سمبلها مورد تجزیه و تحلیل قرار میگیرد سپس برای نمایش آنها از حداقل بیتهای ممکن
برای سمبلهایی که بیش از سایر سمبلها تکرار شده اند استفاده می شود.  



مثلا در متن های انگلیسی ، حرف E
متداولترین حرف به شمار می آید.

در روش رمزگذاری هافمن ممکن است بتوانید حرف E را با
2 بایت نشان دهید (مثلا ترکیب 10) این ترکیب برای نمایش حرف
E در کد های اسکی بکار می رود.

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







اساس کار رمزگذاری هافمن در واقع یک
الگوریتم است که بر پایه ای استوار است که تعداد تکرار داده ها درون یک فایل همسان
نیستند. با این الگوریتم داده هایی با تعداد تکرار بیشتر ، کدی کوتاه تر نسبت داده
شده و به داده هایی با تعداد تکرار کمتر کد های بلندتر نسبت داده می شود.

برای مثال
:
در متنی حروف الف تعداد تکرار 5 ، ب
تعداد تکرار 6 ، ج تعداد تکرار 30 باشد در حالت عادی برای نمایش سه داده به 2 بیت
نیاز است بنابراین حاصل برابر است با 5*2+6*2+30*2 یعنی به 82 بیت احتیاج داریم
ولی اگر با استفاده از الگوریتم هافمن به حرف ج کد 1 بیتی ، به ب کد 2 بیتی نسبت
داده شود حاصل برابر است با 5*2+6*2+30*1 یعنی 52 بیت نیاز است.

May 2007

نویسنده : فرهاد مرتضی پور


قوانین کپی رایت شبکه انجمن های پارسی

Copyright © 2004-2007 Persian Forum Network. All Rights Reserved





   
پست شماره 94626
ارسال شده در تاریخ جمعه 28 اردیبهشت 1386 - 9:42 بعدازظهر
تازه اول راهه

تازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راهه

گروه: کاربران
آخرین بازدید: جمعه 2 شهریور 1386 - 1:35 صبح
پست ها: 14, بازدید ها: 14

از پاسختون ممنونم.


اگه میشه رابطه فشرده سازی و رمز گزاری هافمن را هم توضیح بدید. چون در کتاب هایی که من دیدم این ها دو روش مختلف هستند. من بیشتر روی قسمت فشرده سازی تاکید دارم. اگر ممکنه یک مثاله برنامه نویسی رو هم درج کنید.     با تشکر



moyjon
پست شماره 94627
ارسال شده در تاریخ شنبه 29 اردیبهشت 1386 - 9:17 بعدازظهر
تازه اول راهه

تازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راهه

گروه: کاربران
آخرین بازدید: جمعه 2 شهریور 1386 - 1:35 صبح
پست ها: 14, بازدید ها: 14

بازم سلام


یعنی هیچ کسی نیست که جواب منو بده. یعنی من باید به فروم های دیگه رو بندارم..!!!



moyjon
پست شماره 94628
ارسال شده در تاریخ شنبه 29 اردیبهشت 1386 - 9:25 بعدازظهر


Most Valuable Professional

Most Valuable Professional

گروه: مدیر انجمن (ویژه 2)
آخرین بازدید: دیروز 20:00:06
پست ها: 1,518, بازدید ها: 2,471

سلام
دوست عزیز

در مورد الگوریتم هافمن ، تمام اطلاعاتی که داشتم رو در پست قبلیم در اختیار شما گذاشتم



اینم بگم که الگوریتم رمزگذاری هافمن ، الگوریتم فشرده سازی است و زمانی بهینه است که حروف منحصر بفرد متناوبا در داده هایی که فشرده می شوند استفاده شده باشد
fmh12007-05-19 18:22:15





   
پست شماره 94629
ارسال شده در تاریخ یکشنبه 30 اردیبهشت 1386 - 11:29 بعدازظهر
تازه اول راهه

تازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راههتازه اول راهه

گروه: کاربران
آخرین بازدید: جمعه 2 شهریور 1386 - 1:35 صبح
پست ها: 14, بازدید ها: 14
سلام
در اینجا شما گفتید که فایل متنی. میخواستم بدونم که این الگوریتم در برنامه نویسی چه کاربردی داره.

آیا منظور شما اینه که با این الگوریتم داده های متنی خلاصه میشن؟ مثلا در یک برنامه که اسامی دانشجو هارو نگه داری میکنه میتونه حجم کمتری رو به برنامه بده؟

 



moyjon
پست شماره 94630
ارسال شده در تاریخ یکشنبه 30 اردیبهشت 1386 - 11:31 بعدازظهر


Most Valuable Professional

Most Valuable Professional

گروه: مدیر انجمن (ویژه 2)
آخرین بازدید: دیروز 20:00:06
پست ها: 1,518, بازدید ها: 2,471




moyjon
سلام
در اینجا شما گفتید که فایل متنی. میخواستم بدونم که این الگوریتم در برنامه نویسی چه کاربردی داره.

آیا منظور شما اینه که با این الگوریتم داده های متنی خلاصه میشن؟ مثلا در یک برنامه که اسامی دانشجو هارو نگه داری میکنه میتونه حجم کمتری رو به برنامه بده؟

 


اگه بدقت بخونید متوجه میشید :
در روش رمزگذاری هافمن مجموعه ای از
سمبلها (مانند حروف در فایل متنی) مورد استفاده قرار می گیرند

فایل متنی فقط یه مثال برای درک مطلب بود
fmh12007-05-20 20:07:59





   
پست شماره 94631