נתונה הפעולה הרקורסיבית secret:

public static int secret(int[] a)
{
    return secret(a,a.length-1);
}
public static int secret(int[] a, int i)
{
    if(i == 0) return 0;
    int k = secret(a,i-1);
    if(a[i] < a[k])
        return i;
    return k;
}
(א)נתון המערך הבא של מספרים שלמים:
```java
int[] a = {3,5,1,2,10,9}
```
עקבו אחרי זימון secret(a) רשמו את תוצאת הזימון. יש להראות מעקב!
(ב)מה מבצעת הפעולה secret(a) באופן כללי?
(ג)נתונה הפעולה הרקורסיבית mystery הבאה:
```java
public static void mystery(int[] a)
{
mystery(a, a.length-1);
}
public static void mystery(int[] a, int i)
{
if(i > 0)
{
int k = secret(a,i);
int temp = a[i];
a[i] = a[k];
a[k] = temp;
mystery(a, i-1);
}
}
```
נתון המערך הבא של מספרים שלמים:
```java
int[] a = {3,5,1,2,10,9}
```
עקבו אחרי זימון mystery(a) ורשמו את תוצאות הזימון.
יש להראות מעקב אחרי הפעולה mystery, אין צורך במעקב אחרי הפעולה secret.
(ד)מה מבצעת הפעולה mystery(a) באופן כללי?

🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה בטיחות

שאלו כאן — ותקבלו מענה מוסמך.

🎓 מרצה בטיחות מוסמך עונה כאן — תקבלו מענה מקצועי

רוצים לתרגל אלפי שאלות נוספות?

המשיכו לתרגול מלא עם משוב אישי ←

מבחני מה"ט אמיתיים · משוב מיידי · וידאו לכל נושא · מעקב התקדמות

המשיכו לתרגול מלא ←