Menu
Coddy logo textTech

קוד מדומה

שיעור 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 עוברת על שתי רשימות ממוינות במקביל, ובכל פעם לוקחת את האיבר הקטן יותר שבתחילת הרשימה, כך שהרשימה הממוזגת נשארת ממוינת.

נסו בעצמכם

השיעור הזה לא כולל אתגר קוד.

quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה מיון מיזוג - סדרת מבני נתונים ואלגוריתמים

תרגלו בעצמכם: קומפיילר C אונליין