עבור לתוכן

ממימוש תור קדימויות בעזרת ערימה

Featured Replies

פורסם

שלום!

מישהו יכול להסביר לי מה זה תור קדימויות? זה תור רגיל?

תודה רבה

פורסם

תור רגיל הוא first in first out - הראשון שנכנס הוא הראשון שיוצא. כשבאים להוציא איבר מהתור מסתכלים מי האיבר שנמצא בתור הכי הרבה זמן, ומוציאים אותו.

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

פורסם
  • מחבר

<p>

איך אני יודע מה העדיפות של אותו האיבר?? כי בקוד שמצאתי :

EXTRACT_MAX(A)

1. max = A[1];

2. A[1] = A[heapsize(A)];

3. heapsize(A)--;

4. MAX_HEAPIFY(A, 1);

5. return max; הוא פשוט מחליף את האחרון עם הראשון ומקצר את את הSTACK איפה הוא משתמש בעדיופות??

נערך על-ידי NeedForCode

פורסם

יעזור אם תעלה את כל השאלה במקום קטעים נבחרים.

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

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים