האם החיפוש הבינארי הוא המהיר ביותר?
האם החיפוש הבינארי הוא המהיר ביותר?

וִידֵאוֹ: האם החיפוש הבינארי הוא המהיר ביותר?

וִידֵאוֹ: האם החיפוש הבינארי הוא המהיר ביותר?
וִידֵאוֹ: אנשים שנפלו לתוך כלובים של חיות מסוכנות | טופטן 2024, נוֹבֶמבֶּר
Anonim

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

פשוט כך, האם חיפוש בינארי מהיר יותר מאשר ליניארי?

חיפוש בינארי יעיל יותר מאשר חיפוש לינארי ; יש לו מורכבות זמן של O(log n). רשימת הנתונים חייבת להיות בסדר ממוין כדי שהיא תעבוד. א חיפוש בינארי עובד על ידי מציאת האלמנט האמצעי של מערך ממוין והשוואתו לאלמנט היעד שלך.

שנית, האם החיפוש הבינארי הוא הטוב ביותר? אם הנתונים כבר ממוינים על המפתח שאתה מחפש עבור, אז חיפוש בינארי זה רחוק טוב יותר מאשר ליניארי לחפש . אם יש 40,000 אלמנטים במערך חיפוש בינארי יעלה לכל היותר 16 השוואות, בעוד ליניארי לחפש יעלה לכל היותר 40,000 השוואות ובממוצע 20,000 השוואות.

בהקשר זה, מהו אלגוריתם החיפוש המהיר ביותר?

חיפוש בינארי

מהי מורכבות הזמן של חיפוש בינארי?

חיפוש בינארי רץ פנימה במקרה הגרוע לוגריתמי זְמַן , ביצוע השוואות O(log n), כאשר n הוא מספר האלמנטים במערך, ה-O הוא סימון Big O, ו-log הוא הלוגריתם. חיפוש בינארי לוקח מרחב קבוע (O(1)), כלומר הרווח שלוקח האלגוריתם זהה עבור כל מספר של אלמנטים במערך.

מוּמלָץ: