שאלה ראשונה על איך להכניס איבר לרשימה מקושרת ממויינת
שאלות מתוך הראיון
איך להכניס איבר לרשימה מקושרת ממויינת?
תשובות
הוסף תשובה
|
לצפיה בתשובות
ספטמבר 2020
רצים עם שני פוינטרים עד ל- NULL עוקבים עד שמוצאים את האיבר הקטן יותר עם הפוינטר הימני יותר. ברגע שמצאנו מכניסים את האיבר בין הגדול יותר לקטן יותר, אם הגענו ל- NULL(כולם גדולים יותר ממנו) מוסיפים אותו בסוף
התהליך היה מהיר, מענה ניתן באופן מהיר בנוגע לתשובה של קבלה או לאו
שאלות מתוך הראיון
לרשום פונקציה בפסאודו-קוד שמחזירה את מספר הביטים הדולקים בבינארי (כאשר מקבל מספר כלשהוI)
תשובות
הוסף תשובה
|
לצפיה בתשובות
יוני 2016
כעיקרון צריך לחלק ב2 את המספר כל הזמן וככה מוצאים את התשובה אך הפיתרון לא יעיל
הפיתרון היעיל הוא בהנחה ויש זיכרון בלתי מוגבל ואז משתמשים במערך אינסופי וזהו.
אוגוסט 2016
הפתרון היעיל ביותר לשאלה הוא שימוש בlookup table בגודל 256 שם מאחסנים את מספר הביטים הדלוקים בכל בית, וב - O(1) ניתן לדעת כמה דלוקים בכל בית. אם קיבלנו int נבצע את הפעולה 4 פעמים.
1. בנה אוטומט שבודק האם מספר בינארי מתחלק ב - 5 ( מקבלים ספרה,ספרה )
2. החלף בין ספרות הנמצאות במקום הזוגי לאי זוגי
תשובות
הוסף תשובה
|
לצפיה בתשובות
אפריל 2016
1. בניית אוטומט פשוטה , לוקחים כול פעם ספרה חדשה ומפעילים מצב באוטומט לפיה .(האוטומט יכיל 5 מצבים לפי השאריות ).
2. ניתן לבצע זאת באמצעות פעולות XOR/OR/AND/MOVE במספר פעולות קבוע מראש .
השאלה העיקרית הייתה לבנות מכונת מצבים האוספת ביט אחד כל מחזור שעון ונותנת תשובה חיובית או שלילית האם המספר שהתקבל מתחלק ב-5
תשובות
הוסף תשובה
|
לצפיה בתשובות
מרץ 2016
צריך להבין שתוספת ביט זה בעצם או כפול 2 או כפול 2 ועוד אחד ומכאן ומתכונות החלוקה ב-5 נגזר שיש 5 מצבים שרק עוברים ביניהם. כל מצב מייצג שתי ספרות אחדות עשרוניות (5 ו0, 6 ו1, וכו,)