המשימה
כתוב פעולה שמקבלת מערך **ממוין** וערך לחיפוש, ומחזירה את האינדקס שבו הערך נמצא, או -1 אם אינו במערך. הרעיון: השווה לאיבר האמצעי. אם הוא גדול מדי — המשך לחפש בחצי השמאלי, אם קטן מדי — בחצי הימני. כך בכל צעד נחתך חצי מהמערך. דוגמאות עבור [1, 3, 5, 7, 9]: 5 → 2 1 → 0 4 → -1 הנחיות: • אסור לעבור על המערך בלולאה רגילה מההתחלה לסוף. [מערך]
קוד הפתיחה
public class Main {
public static int binarySearch(int[] arr, int target) {
// כתוב את הפתרון כאן
return -1;
}
public static void main(String[] args) {
int[] a = {1, 3, 5, 7, 9};
System.out.println(binarySearch(a, 5)); // 2
System.out.println(binarySearch(a, 1)); // 0
System.out.println(binarySearch(a, 9)); // 4
System.out.println(binarySearch(a, 4)); // -1
}
}
כדי לכתוב, להריץ ולקבל משוב — התחבר עם חשבון Google. לוקח שנייה.
המשוב נוצר על ידי AI ועשוי לטעות. אם אתה חושב שהפתרון שלך נכון —
כנראה שאתה צודק. הציון כאן הוא לתרגול בלבד ואינו מדווח לאיש.
אל תכתוב בקוד פרטים אישיים כמו שם מלא, טלפון או כתובת. הקוד נשלח לשירות
בדיקה חיצוני.