מימוש (חלק 2)
שיעור 6 מתוך 9 בקורס מיון מהיר – סדרת DSA של Coddy.
כעת נחבר את הציר, החלוקה והרקורסיה לאלגוריתם המלא.
אתגר
קלעכשיו נחבר את הכול לאלגוריתם המלא.
כתבו פונקציה בשם quickSort שמקבלת מערך של מספרים שלמים ומחזירה אותו ממוין בסדר עולה.
השתמשו באיבר האחרון בתור ציר, חלקו את שאר האיברים לקבוצה קטנה יותר ולקבוצה גדולה יותר, הפעילו רקורסיבית את quickSort על כל קבוצה, וחברו אותן כך: הקטנים הממוינים + הציר + הגדולים הממוינים. מערך שמכיל 0 או 1 איברים כבר ממוין, לכן החזירו אותו כפי שהוא.
אפשר להשתמש שוב ברעיון החלוקה מהשיעור הקודם.
נסו בעצמכם
#include <stdlib.h>
int* quickSort(int* arr, int arr_size, int* returnSize) {
// כתבו כאן קוד
*returnSize = arr_size;
return arr;
}
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה מיון מהיר – סדרת DSA
תרגלו בעצמכם: קומפיילר C אונליין