המשימה
מיון בחירה עובד כך: מוצאים את האיבר הקטן ביותר, מעבירים אותו לתחילת
המערך, וחוזרים על כך עבור שאר המערך.
בתרגיל הזה תכתוב **צעד אחד** בלבד.
כתוב פעולה שמקבלת מערך, מוצאת בו את האיבר הקטן ביותר, ומחליפה אותו
עם האיבר שבמקום הראשון. הפעולה משנה את המערך עצמו ואינה מחזירה דבר.
דוגמאות:
{5, 2, 9, 1} → {1, 2, 9, 5}
{3, 8, 4} → {3, 8, 4} (הקטן כבר בראש — שום דבר לא זז)
{7} → {7}
{} → {} (בלי קריסה)
הנחיות:
• מצא קודם את **המקום** של האיבר הקטן, לא רק את ערכו. בלי המקום אין
מה להחליף.
• החלפה בין שני תאים דורשת משתנה עזר. השמה ישירה בשני הכיוונים דורסת
ערך ומאבדת אותו.
• שים לב לדוגמה השנייה: כשהקטן כבר בראש, ההחלפה מתבצעת בין תא לעצמו
והמערך נשאר כשהיה. זה תקין ולא צריך תנאי מיוחד.
• מערך ריק לא אמור לקרוס.
קוד הפתיחה
using System;
class Program {
static void MinToFront(int[] arr) {
// כתוב את הפתרון כאן
}
static void Print(int[] arr) {
for (int i = 0; i < arr.Length; i++) {
Console.Write(arr[i] + " ");
}
Console.WriteLine();
}
static void Main() {
int[] a = {5, 2, 9, 1};
MinToFront(a);
Print(a); // 1 2 9 5
int[] b = {3, 8, 4};
MinToFront(b);
Print(b); // 3 8 4
int[] c = {7};
MinToFront(c);
Print(c); // 7
int[] empty = {};
MinToFront(empty);
Print(empty); // (שורה ריקה)
}
}
כדי לכתוב, להריץ ולקבל משוב — התחבר עם חשבון Google. לוקח שנייה.
המשוב נוצר על ידי AI ועשוי לטעות. אם אתה חושב שהפתרון שלך נכון —
כנראה שאתה צודק. הציון כאן הוא לתרגול בלבד ואינו מדווח לאיש.
אל תכתוב בקוד פרטים אישיים כמו שם מלא, טלפון או כתובת. הקוד נשלח לשירות
בדיקה חיצוני.