תוכן עניינים:

איך דוחפים ומקפיצים אלמנטים בערימה מקושרת?
איך דוחפים ומקפיצים אלמנטים בערימה מקושרת?

וִידֵאוֹ: איך דוחפים ומקפיצים אלמנטים בערימה מקושרת?

וִידֵאוֹ: איך דוחפים ומקפיצים אלמנטים בערימה מקושרת?
וִידֵאוֹ: Linked List Implementation of Stacks (Part 1) 2024, נוֹבֶמבֶּר
Anonim

יישום

  1. לִדחוֹף (א): זה מוסיף אֵלֵמֶנט a על גבי ה לַעֲרוֹם . זה לוקח זמן O (1 O(1 O(1) כמו כל אחד צומת מחסנית מוכנס בחלק הקדמי של רשימה מקושרת .
  2. פּוֹפּ (): זה מסיר את אֵלֵמֶנט על גבי ה לַעֲרוֹם .
  3. Top(): זה מחזיר את אֵלֵמֶנט על גבי ה לַעֲרוֹם .

תוך שמירה על זה, איך דוחפים אלמנטים בערימה מקושרת?

לִדחוֹף (): לְהַכנִיס ה אֵלֵמֶנט לְתוֹך צָמוּד רשום דבר מלבד מה שהוא הצומת העליון של לַעֲרוֹם . pop(): החזר למעלה אֵלֵמֶנט מ ה לַעֲרוֹם ולהעביר את המצביע העליון לצומת השני של צָמוּד רשימה או לַעֲרוֹם . peek(): החזר את החלק העליון אֵלֵמֶנט . display(): הדפס הכל אֵלֵמֶנט שֶׁל לַעֲרוֹם.

מלבד לעיל, מה קורה כאשר אתה דוחף צומת חדש אל מחסנית שמיושמת באמצעות רשימה מקושרת? א) ב לִדחוֹף פעולה, אם צמתים חדשים מוכנסים בתחילת רשימה מקושרת , ואז בפעולת פופ, צמתים יש להסיר מההתחלה. ב) ב לִדחוֹף פעולה, אם צמתים חדשים מוכנסים בסוף רשימה מקושרת , ואז בפעולת פופ, צמתים יש להסיר מהקצה.

בהקשר הזה, איך דוחפים ומצפצפים בערימה?

בעיקר שלוש הפעולות הבסיסיות הבאות מבוצעות בערימה:

  1. דחיפה: מוסיף פריט לערימה. אם הערימה מלאה, אומרים שזה מצב של Overflow.
  2. פופ: מסיר פריט מהערימה.
  3. הצצה או למעלה: מחזירה את הרכיב העליון של הערימה.
  4. isEmpty: מחזירה true אם המחסנית ריקה, אחרת false.

מהי מחסנית מקושרת?

מחלקה המיישמת את א מחסנית מקושרת (למעשה, שניים ערימות ) שיש לו את ההתנהגויות שצוינו. עבור דרישות זמן ריצה, מספר האלמנטים ב- לַעֲרוֹם הוא נ.

מוּמלָץ: