שאלה לגבי פונקציית hash (חלק ב')

מנהל: TA_Isana

שלח תגובה
yinongo
הודעות: 35
הצטרף: 18:47 25/11/2008

שאלה לגבי פונקציית hash (חלק ב')

שליחה על ידי yinongo » 12:08 25/05/2009

יש לי שאלה...
אם אני אשתמש בפונקציית hash מורכבת, שלמשל מורכבת מ-3 פונקציות שונות, שבכל פעם שהאינדקס שנמצא בשימוש, הפונקצייה אוטומטית מנסה לאתר אינדקס אחר.
(ככה אפשר לקבל התפלגות טובה על המערך)

הבעיה היא -
כשאני ארצה לחפש ת"ז, ואני אפעיל עליה את הפונקציה כדי "להיזכר" איפה שמתי אותה במערך... הרי שהפונקציה אוטומטית תנסה לאתר לי מקום חדש פנוי ולכן יש סיכוי שאני אקבל אינדקס שמצביע על false בעוד שידוע שהת"ז שאני מחפש אכן נמצאת בעץ!

אז, יכול להיות שלא כל כך הבנתי את העיניין הזה של איך צריכה לעבוד הפונקצייה hash...
מישהו מהאחראים פה יכול להסביר?

תודה.

TA_Isana
הודעות: 110
הצטרף: 15:19 19/04/2009

שליחה על ידי TA_Isana » 11:42 27/05/2009

שלום

אתה צריך לבחור פונקציית hash שעל מפתח מסוים תמיד תחזיר את אותו הערך (היא לא צריכה לנסות לחפש מקום פנוי, אם התא תפוס). עקרון הפעולה שלה הוא כמו ב- chainig, שתי תעודות זהות שונות יכולות להגיע לאותו תא.

שלח תגובה

חזור אל “- מבני נתונים”