קוד מדומה
שיעור 4 מתוך 9 בקורס מיון מיזוג - סדרת מבני נתונים ואלגוריתמים של Coddy.
mergeSort(array):
if length(array) <= 1:
return array
mid = length(array) / 2
left = mergeSort(array[0..mid])
right = mergeSort(array[mid..end])
return merge(left, right)
merge(left, right):
result = []
while left and right both still have elements:
if left[0] <= right[0]:
move the front of left into result
else:
move the front of right into result
append whatever remains of left
append whatever remains of right
return resultשתי פונקציות פועלות יחד:
- mergeSort ממשיכה לחלק את המערך עד שהחלקים ממוינים באופן טריוויאלי, ואז נעזרת ב־merge כדי למזג אותם.
- merge עוברת על שתי רשימות ממוינות במקביל, ובכל פעם לוקחת את האיבר הקטן יותר שבתחילת הרשימה, כך שהרשימה הממוזגת נשארת ממוינת.
נסו בעצמכם
השיעור הזה לא כולל אתגר קוד.
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה מיון מיזוג - סדרת מבני נתונים ואלגוריתמים
תרגלו בעצמכם: קומפיילר C אונליין