עבור מטריצה mXn שמלאה באפסים ומספרים שלמים, בכל מקום שיש 0 צריך לאפס את השורה והעמודה של ה-0
תשובות
הוסף תשובה
|
לצפיה בתשובות
יוני 2019
להחזיק 2 מערכי עזר, אחד בגודל כמות השורות והשני בגודל כמות העמודות. סורקים את המטריצה וכל פעם שמוצאים 0 מעדכנים את התא המתאים בכל אחד מ-2 המערכים. לבסוף עוברים על המערכים ואיפה שרואים שמצאנו 0 הולכים למטריצה ומאפסים את כל השורה/עמודה
תחילה ראיון טכני, עם שאלות אלגוריתמיקה שצריך לפתור על הלוח, וקצת שאלות כלליות. לאחר מכן, מי שעבר את זה מקבל מטלת בית לשבוע, איזשהו פרוייקט תכנותי, ולאחר מכן ראיון טכני נוסף עם ראש צוות. מי שעובר גם את זה ממשיך לפגישה עם HR.
שאלות מתוך הראיון
נתון מערך ממויין (עם חזרות), ונתון מספר כלשהו. צריך לממש פונקציה שבודקת אם יש במערך זוג איברים שסכומם המספר הנתון. ניתוח זמן ריצה, ופתרון אופטימלי לפחות O(n)
תשובות
הוסף תשובה
|
לצפיה בתשובות
יוני 2019
נחזיק שני אינדקסים - first = 0 ו- last = arr.length.נרוץ על גודל המערך חלקי 2 ונבדוק:
אם arr[first] +arr[last] ==sum נחזיר true.
אחרת, אם arr[first]+arr[last]
נחזיר false.
יולי 2019
1. אם אורך המערך קטן מ 2, תחזיר FALSE
2. אם אורך המערך הוא 2, נבדוק אם סכומם הוא המספר המבוקש, אחרת נחזיר FALSE
3. אחרת, נחזיק 2 אינדקסים, אחד להתחלה ואחד לסוף, אם סכומם גדול מהמספר המבוקש, נקטין את האינדקס של הסוף ב -1
אם סכומם קטן מהמספר המבוקש, נגדיל את האינדקס של ההתחלה ב -1
ונמשיך את הלולאה כל עוד האינדקס של ההתחלה קטן מהאינדקס של הסוף
מבחן תכנות במחשב - כתיבת Logger, לאחר מכן ראיון טכני ואז HR.
שאלות מתוך הראיון
בהנתן מערך של זוגות, כשכל זוג מתאר הורה וילד בעץ, ובהנתן הורה - מחק את ההורה ואת כל תתי העצים שלו. באופן כללי שאלות על סיבוכיות זמן ריצה, זמני מיון וחיפוש.
תשובות
הוסף תשובה
|
לצפיה בתשובות
יוני 2019
להעביר את המערך לטבלת האש, כשכל מפתח הוא הורה ומצביע לרשימה מקושרת של ילדים. להשתמש בתור (באופן דומה ל- BFS) על מנת למחוק את הקודקודים הרלוונטיים, ולהעביר את מה שנשאר מהטבלה בחזרה למערך.
ראיון ראשון עם חבר צוות.
ראיון שני עם ראש צוות.
ראיון שלישי עם HR.
שאלות מתוך הראיון
ממש תור באמצעות מחסניות בצורה יעילה.
תשובות
הוסף תשובה
|
לצפיה בתשובות
יוני 2019
נחזיק שתי מחסניות, כאשר אחת מהן תמיד ריקה (תשמש כמחסנית עזר להפוך את הסדר)כאשר נכנס איבר לתור, נעביר את כל מה שיש במחסנית המלאה למחסנית הריקה, נכניס את האיבר, ונעביר חזרה לריקה. ככה תמיד האיבר שנכנס עכשיו יהיה האחרון בתור. כאשר נוציא מהתור פשוט נוציא מראש המחסנית המלאה.
אוגוסט 2019
נחזיק שתי מחסניות- להכנסה (X) ולהוצאה (Y). נכניס למחסנית X איברים וברגע שנרצה להוציא אז נעביר את תכולתה למחסנית Y ונוציא אחד. רוצים להמשיך להוציא? מוציאים כל עוד יש. רוצים להכניס? מכניסים לX. ברגע שY מתרוקן ורוצים להוציא אז מעבירים מX את איבריה.
לכן PUSH לא יבצע בכלל העברת איברים בין המחסניות וPOP במקרה הטוב ישלוף מY ובמקרה הרע יעביר מX לY איברים.
עוסקת בפיתוח, תכנות, שיווק ומתן זיכיונות למערכות הפעלה למחשבים, פתרונות תוכנה למגזר הפרטי והעסקי ומגוון פלטפורמות משולבות חומרה ותוכנה. בתחום המוצרים ללקוחות משווקת החברה מערכות הפעלה לשרתים, מחשבים אישיים ומחשבי כף יד.