כתבו פעולה המקבלת הפניה לחוליה הראשונה של שרשרת חוליות של מספרים שלמים, ומפצלת אותה לשתי שרשראות לפי זוגיות הערך הראשון: כל מה שתואם את זוגיות הראש נשאר ב-chain, וכל השאר עובר לשרשרת חדשה מוחזרת.
כתבו פעולה המקבלת הפניה לחוליה הראשונה של שרשרת חוליות של מספרים שלמים, ומפצלת אותה לשתי שרשראות לפי זוגיות הערך הראשון: כל מה שתואם את זוגיות הראש נשאר ב-chain, וכל השאר עובר לשרשרת חדשה מוחזרת.
שרשרת החוליות chain לפני הפעולה.
chain → 10 → 20 → 5 → 7 → 8 → 4 → 6 → 11 → 7
שרשרת החוליות chain אחרי הפעולה (נשארו רק הערכים הזוגיים, כי הראשון 10 זוגי).
chain → 10 → 20 → 8 → 4 → 6
השרשרת החדשה newChain שהוחזרה (הערכים האי-זוגיים שהוצאו, בסדרם היחסי המקורי).
newChain → 5 → 7 → 11 → 7
כתבו פעולה המקבלת הפניה לחוליה הראשונה של שרשרת חוליות של מספרים שלמים. הפעולה תפצל את השרשרת לשניים לפי הכלל הבא: אם ערך הראשון בשרשרת הוא זוגי, יש ליצור שרשרת חדשה רק מהערכים האי-זוגיים תוך מחיקתם מהשרשרת המקורית (בשרשרת המקורית יישארו רק ערכים הזוגיים); אם ערך הראשון בשרשרת הוא אי-זוגי, יש ליצור שרשרת חדשה רק מהערכים הזוגיים תוך מחיקתם מהשרשרת המקורית (בשרשרת המקורית יישארו רק ערכים האי-זוגיים). הפעולה תחזיר הפניה לחוליה הראשונה של השרשרת החדשה. כותרת הפעולה: public static Node<Integer> split(Node<Integer> chain)
מהי סיבוכיות הפעולה split שכתבתם בסעיף א'? הסבירו את תשובתכם.
שאלות ותגובות על השאלה
🎓 לא הבנתם משהו? קבלו הסבר נוסף ממרצה לתכנות
שאלו כאן — ותקבלו מענה מוסמך.