הנדסה אזרחית & הנדסה מבנית
חישוב מספר ההשוואה הצפויה בקוואר לעומת חיפוש בינארי
Table of Contents
חיפוש קוויאר וחיפוש בינארי הם אלגוריתמים נפוצים המשמשים כדי למצוא אלמנטים בתוך רשימה. הבנת מספר ההשוואה הצפוי כל אלגוריתם עושה יכול לעזור בבחירת השיטה היעילה ביותר עבור מצבים ספציפיים. מאמר זה משווה את ההשוואה הצפויה בשיטות חיפוש ליניאריות מול בינארי.
חיפוש Linear Search
חיפוש קואר בודק כל אלמנט ברשימה באופן משמעותי עד שהוא מוצא את המטרה או מגיע לסוף.מספר ההשוואה הצפוי תלוי אם המטרה היא נוכחת ומיקומה ברשימה.
אם הרשימה מכילה:0 (ב) אלמנטים 1 של ההרחבה וההמטרה היא במידה שווה להיות בכל עמדה, המספר הצפוי של השוואות הוא:
(ב) השוואות (n + 1) / אנדרטה 2FLT)
הסיבה לכך היא, בממוצע, החיפוש ימצא את המטרה בחצי הדרך.
חיפוש בינארי
חיפוש בינארי עובד על רשימות ממומנות על ידי חלוקה חוזרת של מרווח החיפוש במחצית.יעילותו תלויה בגודל הרשימה ובמיקום המטרה.
במקרה הטוב, המטרה היא באמצע, המחייבת רק השוואה אחת במקרה הגרוע ביותר, היא לוקחת בערך:0logcioFLT:1203:2 nreaFLT 3 השוואות.
בהנחה שההמטרה תהיה במידה שווה בכל עמדה, המספר הצפוי של ההשוואה הוא בערך:
(ב) ,2 ,2 ;2 ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
השוואות סיכום
- חיפוש קואר יש ספירת השוואה צפויה של (n + 1) / 2.
- חיפוש בינארי יש ספירת השוואה צפויה של בערך ההרחבה:0.203FLT
- חיפוש בינארי בדרך כלל דורש פחות השוואות לרשימות גדולות.
- חיפוש קואר עשוי להיות עדיפה על רשימות קטנות או לא מחוסמות.