تالار گفتمان مانشت
درهم سازی - نسخه‌ی قابل چاپ

درهم سازی - shamim_70 - 28 آذر ۱۳۹۳ ۰۷:۳۸ ب.ظ

سلام
اگ اعداد زیررا از چپ به راست داشته باشیم و با استفاده از تابع درهمسازی quadratic probing با پارامترهای c1=1,c2=3در داخل یک ارایه به طول ۱۱ قرار دهیم در ششمین خانه از ارایه کدام یک از اعداد ورودی قرار می گیرند:

۱۰,۲۲,۳۱,۴,۱۵,۲۸,۱۷,۸۸,۵۹

ممنون میشم اصلا این تابع رو برام توضیح بدین!!!(من اصلا تو کتاب پارسه ندیدم چنین چیزیو!!)
اگ چند تابع معروف درهم سازیم ک میدونین میتونن مفید باشن قرار بدین بخونم..ممنون میشم

RE: درهم سازی - mmamadi49 - 28 آذر ۱۳۹۳ ۰۹:۴۷ ب.ظ

ما سه دسته تابع درهم ساز خطی ،درجه دو، و مضاعف داریم
اینکه شما گفتین یک تابع درهم ساز درجه دوم است که توسط فرمول زیر مکان ذخیره هر کلید رو مشخص میکنه:
.....,۳,H(K,i)=(h(k)+c1i+c2i2)mod m , i=0,1,2
C2 ضربدر I به توان دو هستش اینجا نمیشه بنویسم
ابتدا i =0
[تصویر:  322570_83173728543603779970.png][/align]

RE: درهم سازی - shamim_70 - 30 آذر ۱۳۹۳ ۱۱:۵۲ ق.ظ

ببخشید میشه مضاعف رو هم توضیح بدین؟؟
مرسی

RE: درهم سازی - mmamadi49 - 30 آذر ۱۳۹۳ ۰۴:۴۲ ب.ظ

(۳۰ آذر ۱۳۹۳ ۱۱:۵۲ ق.ظ)shamim_70 نوشته شده توسط:  ببخشید میشه مضاعف رو هم توضیح بدین؟؟
مرسی
چشم
در روش مضاعف دو تابع درهم ساز h1, h2 باید داشه باشیم، آنگاه با فرمول زیر مکان عناصر بدست می آیدSadباز هم ابتدا i=0 )
[تصویر:  322817_08836565609659390709.png]

پاسخ : RE: درهم سازی - shamim_70 - 30 آذر ۱۳۹۳ ۰۵:۱۷ ب.ظ

(۳۰ آذر ۱۳۹۳ ۰۴:۴۲ ب.ظ)mmamadi49 نوشته شده توسط:  
(30 آذر ۱۳۹۳ ۱۱:۵۲ ق.ظ)shamim_70 نوشته شده توسط:  ببخشید میشه مضاعف رو هم توضیح بدین؟؟
مرسی
چشم
در روش مضاعف دو تابع درهم ساز h1, h2 باید داشه باشیم، آنگاه با فرمول زیر مکان عناصر بدست می آیدSadباز هم ابتدا i=0 )
[تصویر:  322817_08836565609659390709.png]
مرسی ازت..لطف کردی