ראיון מחולק לשלושה חלקים:
1) שני מראיינים שואלים שאלות עליך.
2) אחד מהם מספר על החברה.
3) חלק שלישי זה שאלה לוגית ושאלת קוד:
1) שאלה לוגית:
יש שלושה כדים אשר מכילים שני כדורים. צבעי הכדורים יכולים להיות:
אדום אדום
אדום שחור
שחור שחור
כדים הנ"ל אם תויות אשר כיתוב עליהם משקר.
כד ראשון:
כיתוב על התוית – אדום אדום
כד שני:
אדום שחור
כד שלישי:
שחור שחור
צריך למצוא מינימום הוצאות כדי לדעת איזה כדורים נמצאים בכדים בוודאות.
פתרון:
יש שלוש פתרונות לתרגיל הזה וצריך להציג אותם וכמובן להסביר למה בחרתם בפתרון הזה, מה המינימום ההוצאות בכל פתרון.
פתרון ראשון:
נניח הוצאנו כדור אדום מכד ראשון:
בכד ראשון יהיה אדום שחור
בכד שני – שחור שחור
בכד שלישי – אדום אדום
אם הוצאנו מכד ראשון כדור שחור:
כד ראשון – שחור שחור
כד שני – אדום אדום
כד שלישי – אדום שחור
זאת אומרת במקרה הזה יהיה שני הוצאות כדי לדעת איזה כדורים יש בשאר הכדים וזה סיכוי של 50 על 50.
פתרון שני:
דומה לפתרון הראשון רק פה אנחנו צריכים הוצאה אחד. וזה סיכון 50 על 50.
פתרון שלישי (פתרון הנכון):
אנחנו נוציא כדור אדום מכד שני ולכן:
כד שני – אדום אדום
כד ראשון – שחור שחור
כד שלישי – אדום שחור.
המלצות:
תחשבו על תרגילי לוגיקה היטב, על תמהרו (מה שעשיתי), זה לא אמור לקחת יותר מ-5-10 דקות.
2) שאלה על קוד:
נתונה הגדרה של הפונקציה הבאה –
char *str pbreak(str1*, str2*);
ומספר דוגמאות לקריאת פונקציה –
str1 = 'Hello Mellanox!';
str2 = '123!';
str2 = '123';
str2 = 'olle';
עליכם להסביר מה מקבלת ומחזירה פונקיה ומה תהיה ב-str2 לאחר שפונקיה תסיים לעבוד.
גם כן צריך להסביר כל שלב שאתם עושים.
אחרי זה מבקשים לכתוב פונקציה זו ב-C או ב-Python בכמה שפחות שורות קוד.
צריך גם להסביר סיבוכיות למקרים ספיציפיים שיכולים לשאול.