מבני-נתונים ומבוא לאלגוריתמים - שאלה מבחינה
להלן שאלה מבחינה ומחשבותיי (אינטואיציות בלבד) לגביה : נתונה קבוצה S של n מספרים ממשיים : ידוע שב - S קיימים (Theta(lgn ערכים שונים בלבד (עם כפילויות) . בנוסף , נתון מספר ממשי z . כתבו אלגוריתם למציאת זוג מספרים x,y ב - S , המקיימים : x+y = z . זמן הריצה הנדרש של האלגוריתם הוא (Theta(n lglgn . מחשבותיי לגבי השאלה : האם עלינו למיין את איברי הקבוצה תחילה ? השאלה מזכירה (לפי זמני הריצה) שצריך לבצע מיון ב - NLGN , כאשר במקום ה - N הימני יש לנו LGN (מהנתון שקיימים תטא LGN ערכים שונים בלבד ?) . ואולם , אם נמיין את איברי הקבוצה תחילה (במיון-מיזוג) , זמן הריצה אמור להיות NLGN (שהרי מיון-מיזוג רץ בכל מקרה בזמן NLGN) . אבל אז אכלנו אותה , כי אנו נדרשים בשאלה לזמן מיון כולל של NLGLGN *בלבד* . האם מיון-ערימה ישפר את זמן הריצה של NLGN ? חוששני שלא ... אז אולי לא צריך למיין ? ואם לא צריך למיין , איך נוכל למצוא זוג מספרים המקיים x+y = z בסיבוכיות הנדרשת ? בברכה , ליאור .
להלן שאלה מבחינה ומחשבותיי (אינטואיציות בלבד) לגביה : נתונה קבוצה S של n מספרים ממשיים : ידוע שב - S קיימים (Theta(lgn ערכים שונים בלבד (עם כפילויות) . בנוסף , נתון מספר ממשי z . כתבו אלגוריתם למציאת זוג מספרים x,y ב - S , המקיימים : x+y = z . זמן הריצה הנדרש של האלגוריתם הוא (Theta(n lglgn . מחשבותיי לגבי השאלה : האם עלינו למיין את איברי הקבוצה תחילה ? השאלה מזכירה (לפי זמני הריצה) שצריך לבצע מיון ב - NLGN , כאשר במקום ה - N הימני יש לנו LGN (מהנתון שקיימים תטא LGN ערכים שונים בלבד ?) . ואולם , אם נמיין את איברי הקבוצה תחילה (במיון-מיזוג) , זמן הריצה אמור להיות NLGN (שהרי מיון-מיזוג רץ בכל מקרה בזמן NLGN) . אבל אז אכלנו אותה , כי אנו נדרשים בשאלה לזמן מיון כולל של NLGLGN *בלבד* . האם מיון-ערימה ישפר את זמן הריצה של NLGN ? חוששני שלא ... אז אולי לא צריך למיין ? ואם לא צריך למיין , איך נוכל למצוא זוג מספרים המקיים x+y = z בסיבוכיות הנדרשת ? בברכה , ליאור .