מימוש (חלק 1)
שיעור 5 מתוך 9 בקורס מיון מיזוג - סדרת מבני נתונים ואלגוריתמים של Coddy.
נבנה את Merge Sort מלמטה למעלה, החל מפעולת הליבה שלו.
אתגר
קלהלב של מיון מיזוג הוא שילוב של שתי רשימות ממוינות כבר לרשימה ממוינת אחת. בואו נבנה את זה קודם.
כתבו פונקציה בשם merge שמקבלת שני מערכים ממוינים של מספרים שלמים, left ו-right, ומחזירה מערך ממויין יחיד שמכיל את כל האיברים שלהם.
עברו על שני המערכים בו-זמנית: קחו שוב ושוב את הקטן מבין שני האיברים הראשונים. כשאחד המערכים מתרוקן, הוסיפו את כל האיברים שנותרו במערך השני.
נסו בעצמכם
#include <stdlib.h>
int* merge(int* left, int left_size, int* right, int right_size, int* returnSize) {
// כתבו כאן את הקוד
*returnSize = 0;
return left;
}
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה מיון מיזוג - סדרת מבני נתונים ואלגוריתמים
תרגלו בעצמכם: קומפיילר C אונליין