מילון (מבנה נתונים) – הבדלי גרסאות

תוכן שנמחק תוכן שנוסף
שורה 9:
 
== מימושים ==
מילון הוא מבנה נתונים אבסטרקטימופשט (כלומר, הוא מגדיר [[מנשק]]ממשק אך חסר מימוש) וישנם מספר מבני נתונים אשר ניתן להשתמש בהם כדי למממשלממש מילון. ההבדלים בין המימושים השונים רבים, וכוללים את [[סיבוכיות]] ה[[סיבוכיות זמן|זמן]] וה[[סיבוכיות מקום|מקום]] של הפעולות השונות, תמיכה או חוסר-תמיכה ב[[מיון (מדעי המחשב)|מיון]] המילון לפי המפתחות, שמירת הסדר של הערכים שהוכנסו, וכמות ה[[זיכרון מחשב|זיכרון]] שנדרשת על-מנת לאחסן את מבנה הנתונים (ב[[זיכרון פנימי|זיכרון הפנימי]] של ה[[מחשב]] וכן ב[[דיסק קשיח|דיסק הקשיח]]). מימושים מורכבים של מילון מאפשרים גם [[איטרציה]] על המפתחות, איטרציה על הערכים, או איטרציה על הערכים והמפתחות בו-זמנית.
 
המימושים הנפוצים ביותר למילון הם:
שורה 16:
* '''[[עץ אדום שחור]]''' - מימוש של מילון המאפשר חיפוש והוספה של מפתחות בסיבוכיות זמן של <math>O\left(\log n\right)</math> גם במקרה הגרוע. בנוסף, הוא מאפשר איטרציה ממוינת לפי סדר המפתחות.
* '''[[עץ B Plus]]''' - מימוש בעל יתרונות יחסיים עבור מילונים גדולים במיוחד (לדוגמה, מרשם האזרחים של [[משרד הפנים]], או [[מילון אבן-שושן]]).
 
מילון בו המפתחות הם בערכים הוא למעשה [[קבוצה (מבנה נתונים)|קבוצה]].
 
{{מבני נתונים}}