שאלה למוחות הפורום,
את השאלה הזו שאלו את חבר שלי בראיון עבודה: בהינתן שני רשימות מקושרות, חד כיווניות, והעובדה שבמקום כלשהו הן נחתכות, מצא את המקום בו הן נחתכות בסיבוכיות זמן ליניארית וסיבוכיות מקום קבועה. כלומר, לא ניתן לשנות ערכים בזכרון, ולא ניתן להשתמש במקום נוסף מעבר למספר קבוע של אוגרים\משתנים... אני חושב שזה בלתי אפשרי, שכן יש מספר ריבועי של תשובות, ואני מניח שמכיוון שלא ניתן לאגור נתונים הדרך היחידה לגלות שתשובה היא נכונה הוא להשוות, ומכיוון שמכל השוואה ניתן להסיק רק כי החתך אינו עובר במיקום מסויים בלבד. כמובן שיכול להיות שאני טועה, האם נראה לכם שניתן להסיק מהשוואה בין שני מיקומים ברשימות (בין ערכי המצביעים שלהם, שמצביעים לאיברים) משהו אחר מלבד האם החתך נמצא במקום זה ?, אולי יש לכם רעיון שאינו דורש השוואות, ואם כן אז מה לכל הרוחות ? כמובן שאם יש לי n מעבדים וגישת כתביה משותפת אז הפתרון ברור, אבל אני בספק אם לזה השאלה כוונה.
את השאלה הזו שאלו את חבר שלי בראיון עבודה: בהינתן שני רשימות מקושרות, חד כיווניות, והעובדה שבמקום כלשהו הן נחתכות, מצא את המקום בו הן נחתכות בסיבוכיות זמן ליניארית וסיבוכיות מקום קבועה. כלומר, לא ניתן לשנות ערכים בזכרון, ולא ניתן להשתמש במקום נוסף מעבר למספר קבוע של אוגרים\משתנים... אני חושב שזה בלתי אפשרי, שכן יש מספר ריבועי של תשובות, ואני מניח שמכיוון שלא ניתן לאגור נתונים הדרך היחידה לגלות שתשובה היא נכונה הוא להשוות, ומכיוון שמכל השוואה ניתן להסיק רק כי החתך אינו עובר במיקום מסויים בלבד. כמובן שיכול להיות שאני טועה, האם נראה לכם שניתן להסיק מהשוואה בין שני מיקומים ברשימות (בין ערכי המצביעים שלהם, שמצביעים לאיברים) משהו אחר מלבד האם החתך נמצא במקום זה ?, אולי יש לכם רעיון שאינו דורש השוואות, ואם כן אז מה לכל הרוחות ? כמובן שאם יש לי n מעבדים וגישת כתביה משותפת אז הפתרון ברור, אבל אני בספק אם לזה השאלה כוונה.