מכל (טיפוס נתונים מופשט)

מתוך ויקיפדיה, האנציקלופדיה החופשית

במדעי המחשב, מְכָלאנגלית: Container) הוא מחלקה, מבנה נתונים,[1][2] או טיפוס נתונים מופשט (ADT) שמופעו מכיל אוסף של אובייקטים אחרים. במילים אחרות, הם מאחסנים אובייקטים בצורה מאורגנת על פי כללים מסוימים. קיימים מימושים שונים של המכל (בצורת הורשה), שלכל אחד מהם גודל וסיבוכיות פעולות שונים, המאפשרים גמישות בבחירת המכל המתאים לכל בעיה.

פונקציות ומאפייני מכלים[עריכת קוד מקור | עריכה]

מכלים מאופיינים בעזרת שלוש התכונות הבאות:

  • צורת גישה:הדרך בה ניגשים לאובייקטים של המכל. הגישה יכולה להיעשות על פי אינדקס (כמו במערכים), לפי LIFO (כמו במחסנית), לפי FIFO (כמו בתורים) וכדומה.
  • אחסון: צורת האחסון של האובייקט במכל. ניתן לאחסן העתק שלם של האובייקט (ברמות עומק שונות) או מצביע אל האובייקט.
  • הזזה: צורת ההזזה של אובייקטים במכל.

מחלקות מכלים צפויות לממש את המתודות הבאות:

  • יצירת מכל ריק (בנאי);
  • הכנסת עצמים לתוך המכל;
  • מחיקת אובייקטים מן המכל;
  • מחיקת כל האובייקטים בתוך המכל;
  • גישה אל העצמים במכל;

לעיתים מכלים ממומשים ביחד עם איטרטורים

סוגים[עריכת קוד מקור | עריכה]

מכלים מסווגים כמכל חד-ערכי או מכל אסוציאטיבי.

מכל חד-ערכי מאחסן כל אובייקט באופן עצמאי. ניתן לגשת לאובייקטים בצורה ישירה או בעזרת איטרטורים.

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

מימושים[עריכת קוד מקור | עריכה]

ראו גם[עריכת קוד מקור | עריכה]

קישורים חיצוניים[עריכת קוד מקור | עריכה]

הערות שוליים[עריכת קוד מקור | עריכה]

  1. ^ Paul E. Black (ed.), entry for data structure in Dictionary of Algorithms and Data Structures. US National Institute of Standards and Technology.15 December 2004. Accessed on Oct 04, 2011.
  2. ^ Entry data structure in the Encyclopædia Britannica (2009) Online entry Accessed on Oct 04, 2011.
  3. ^ "PL/SQL Collections and Records". נבדק ב-2013-04-20.