מציאת ערכים במערך
יש לי שאלה כזאת: נתון מערך של n מספרים ממשיים, ועוד מספר ממשי z, נתון שכל המספרים שונים זה מזה. כתוב אלגוריתם שקובע האם קיימים: א. 2 איברים שונים במערך שסכומם הוא בדיוק z - זמן ריצה נדרש O(nlogn) ב. 3 איברים שונים במערך שסכומם הוא בדיוק z - זמן ריצה נדרש O(n^2) ג. 4 איברים שונים במערך שסכומם הוא בדיוק z - זמן ריצה נדרש O(n^2logn) ד. 5 איברים שונים במערך שסכומם הוא בדיוק z - זמן ריצה נדרש O(n^3) את הסעיפים הראשונים הצלחתי לפתור. בסעיף הראשון ממיינים את המערך בO(nlogn) ואז עוברים על המערך מההתחלה ומהסוף בו זמנית, עד שמגיעים או לא מגיעים לסכום הדרוש. בסעיף השני שוב ממיינים, סורקים את המערך פעם אחת (n פעמים) ועבור על תא בודקים את שאר המערך כמו בסעיף א'. אני תקוע עם 2 הסעיפים האחרונים. למישהו יש רעיון? תודה!
יש לי שאלה כזאת: נתון מערך של n מספרים ממשיים, ועוד מספר ממשי z, נתון שכל המספרים שונים זה מזה. כתוב אלגוריתם שקובע האם קיימים: א. 2 איברים שונים במערך שסכומם הוא בדיוק z - זמן ריצה נדרש O(nlogn) ב. 3 איברים שונים במערך שסכומם הוא בדיוק z - זמן ריצה נדרש O(n^2) ג. 4 איברים שונים במערך שסכומם הוא בדיוק z - זמן ריצה נדרש O(n^2logn) ד. 5 איברים שונים במערך שסכומם הוא בדיוק z - זמן ריצה נדרש O(n^3) את הסעיפים הראשונים הצלחתי לפתור. בסעיף הראשון ממיינים את המערך בO(nlogn) ואז עוברים על המערך מההתחלה ומהסוף בו זמנית, עד שמגיעים או לא מגיעים לסכום הדרוש. בסעיף השני שוב ממיינים, סורקים את המערך פעם אחת (n פעמים) ועבור על תא בודקים את שאר המערך כמו בסעיף א'. אני תקוע עם 2 הסעיפים האחרונים. למישהו יש רעיון? תודה!