Had 2 interviews, 1 week apart. 1st interview with two of the people I would have worked with (one of them was the team lead), and the 2nd with the overall teams manager.
שאלות מתוך הראיון
Find the longest substring with k unique characters in a given string
היו שני מראיינים בראיון. תחילה הם הסבירו על החברה: מייצרים מוליכים למחצה, לתעשיית רכיבי הזיכרון וה-CPU. לאחר מכן ביקשו שאסביר על פרויקט שעשיתי ואסרטט על דף את הדיזיין קלאס (OOD). תוך כדי שאלו שאלות על הסרטוט והפרוייקט, ושאלו איך היה אפשר לשלב בו מולטיטרדיניג. אח"כ שאלו שאלות טכניות.
שאלות מתוך הראיון
1. תאר פרויקט שעשיתי, כולל פירוט הדיזיין (עיצוב, ארכיטקטורה)
2. איך היית משלב multithreding (ריבוי חוטים) בפרויקט שלך?
3. יש מערכת צירים דו מיימדית (X,Y) ויש מבנה נתונים של קווים במערכת (לכל קו מצויין נק' התחלה ונק' סוף שלו). צריך לכתוב אלגוריתם שימצא את המספר המקסימלי של הקווים שיכולים להחתך על ידי קו מאונך אחד לציר ה-X.
4. מה ההבדל בין מחלקה (class) למבנה (struct) ב-#C?
5. מה קורה כאשר משתמשים בהמון מבנים בתוכנית אחת?
6. מה קורה כאשר שני מבנים מצביעים אחד על השני by reference ואף אחד לא מצביע עליהם?
תשובות
הוסף תשובה
|
לצפיה בתשובות
יוני 2017
3. יש ליצור מערך דינמי, שבו ישמרו נקודות ההתחלה ונקודות הסוף של כל קו, וצריך למצוא את האיזור בו יש הכי הרבה נקודות ההתחלה ועדיין לא סומנו נקודות סוף.
4. זיכרון המחלקה נשמר בערימה (heap). לעומת זאת, זיכרון המבנה נשמר במחסנית (stack), אך אם המבנה נמצא בתוך המחלקה אז הוא כמובן נשמר גם בערימה.
5. ה-Garbage Collector יזהה מבנים שכבר לא בשימוש וישחרר את הזיכרון שלהם. כך יתפנה מקום למבנים חדשים. (לא בטוח בתשובה).
6. ה-Garbage Collector יזהה זאת וישחרר את שניהם. (לא בטוח בתשובה).
פברואר 2019
3.
יוצרים רשימה אליה מזינים את כל הקוים בצורה ממוינת (מחזיקה איבר מסוג מבנה של נקודה ואם התחלה או סוף) - O(nlogn)
רצים על הרשימה ובעזרת counter שעולה עם מפגש בהתחלה ויורד עם מפגש של סוף וMaxcount ששומר את הערך המקסימלי ומוחזר בסוף מוצאים את נקודת החפיפה המקסימלית - O(n)
סה"כ o(nlogn)