ארבע שיטות לאותה בעיה: מיון בועות, מיון הכנסה, מיון מיזוג ומיון מהיר. מודדים כמה השוואות כל אחת עושה על אותה שורה, מגלים שמספר ההחלפות קבוע, ורואים שגם לשיטה מהירה יש מקרה גרוע.
שלב 1 מתוך 5 · ארבע דרכים
שלב 1 מתוך 5
ארבע דרכים
לבעיה אחת יכולים להיות הרבה אלגוריתמים. באלגוריתם יש ארבעה:
- מיון בועות משווה שכנים ומחליף, מעבר אחר מעבר.
- מיון הכנסה לוקח כל בלוק בתורו ומחליק אותו שמאלה, החלפה אחר החלפה, עד שהוא פוגש בלוק נמוך ממנו. כך החלק השמאלי של השורה תמיד ממוין, וגדל בבלוק אחד בכל פעם.
- מיון מיזוג מפצל את השורה לחצאים, ואת החצאים לחצאים, עד בלוקים בודדים, ואז ממזג זוגות של חלקים ממוינים: כל השוואה בין שני הבלוקים הקדמיים מורידה את הנמוך מביניהם למדף התחתון.
- מיון מהיר בוחר איבר ציר, כאן הבלוק האחרון, שם משמאלו את כל הנמוכים ממנו ומימינו את הגבוהים, וממיין כל צד באותה דרך.
כולם מסיימים באותה שורה ממוינת. מה שמבדיל ביניהם הוא כמה עבודה זה לוקח. השורה עכשיו כמעט ממוינת: רק כמה בלוקים זזו מקום או שניים.
שלב 2 מתוך 5
מיון מיזוג
מיון מיזוג עובד ברמות. שמונה בלוקים מתפצלים לשני חצאים של ארבעה, לארבעה של שניים ולשמונה בודדים: רמות. אחר כך ממזגים חזרה, רמה אחר רמה. מיזוג של שני חלקים ממוינים מהיר, כי מספיק להשוות את שני הבלוקים שבראש כל חלק.
על הלוחית של מיון מיזוג סופרים העברות במקום החלפות: כל בלוק יורד למדף התחתון ועולה בחזרה, פעם בכל רמה.
שלב 3 מתוך 5
החלפות וזוגות הפוכים
מיון בועות ומיון הכנסה מחליפים רק שכנים. על השורה המעורבבת הזאת מיון בועות עושה 120 השוואות ו־72 החלפות.
שלב 4 מתוך 5
המקרה הגרוע
מיון מהיר מהיר כשאיבר הציר נופל באמצע, כי אז כל חלוקה חוצה את העבודה, כמו במיון מיזוג. אבל אין מי שמבטיח שהוא ייפול באמצע. המקרה הגרוע של אלגוריתם הוא הקלט שמכריח אותו לעבוד הכי קשה.
שלב 5 מתוך 5
לבחור שיטה
עכשיו שלושים ושניים בלוקים, מעורבב. מדדו כל אחד מארבעת האלגוריתמים על אותה שורה.
הגרסה האינטראקטיבית נטענת…
הגרסה האינטראקטיבית נטענת…
כל שלב מכין לכם את הסצנה, ובקר שמסומן „קבוע” נשאר במקומו בשלב הזה.
תרגול · נבאו, ואז הסתכלו
שישה־עשר בלוקים, כמעט ממוין. איזה אלגוריתם ימיין את השורה הזאת בהכי מעט השוואות?
תרגול · נבאו, ואז הסתכלו
שישה־עשר בלוקים, כמעט ממוין. איזה אלגוריתם ימיין את השורה הזאת בהכי מעט השוואות?
תרגול · חשבו
מיון מיזוג על שורה הפוכה של 8 בלוקים. מיון בועות עשה כאן 28 השוואות. כמה השוואות יעשה מיון מיזוג?
תרגול · חשבו
מיון מיזוג על שורה הפוכה של 8 בלוקים. מיון בועות עשה כאן 28 השוואות. כמה השוואות יעשה מיון מיזוג?
תרגול · נבאו, ואז הסתכלו
על השורה המעורבבת הזאת של 16 בלוקים, מיון בועות עושה 72 החלפות. אלגוריתם יתחלף למיון הכנסה, שגם הוא מחליף רק שכנים. כמה החלפות יעשה?
תרגול · נבאו, ואז הסתכלו
על השורה המעורבבת הזאת של 16 בלוקים, מיון בועות עושה 72 החלפות. אלגוריתם יתחלף למיון הכנסה, שגם הוא מחליף רק שכנים. כמה החלפות יעשה?
תרגול · נבאו, ואז הסתכלו
מיון מהיר ממיין את השורה המעורבבת של 16 בלוקים ב־57 השוואות. סדר התחלתי יתחלף להפוך. מה יקרה?
תרגול · נבאו, ואז הסתכלו
מיון מהיר ממיין את השורה המעורבבת של 16 בלוקים ב־57 השוואות. סדר התחלתי יתחלף להפוך. מה יקרה?
תרגול · הגיעו למטרה
שלושים ושניים בלוקים, מעורבב. מיון בועות צריך כאן 451 השוואות. בחרו את אלגוריתם שממיין את השורה הזאת בהכי מעט השוואות, ולחצו על בדיקה.
תרגול · הגיעו למטרה
שלושים ושניים בלוקים, מעורבב. מיון בועות צריך כאן 451 השוואות. בחרו את אלגוריתם שממיין את השורה הזאת בהכי מעט השוואות, ולחצו על בדיקה.
השיעור הושלם. עניתם על כל שאלות התרגול בו.
