חזור חזרה לדף הקודם
כתובת פורום: https://rotter.name/cgi-bin/nor/dcboard.cgi
שם פורום: פיתוח, תיכנות ובניית אתרים
מספר נושא: 22149
#0,ייש רקורסיה בתכנות בתעשייה?
נכתב על-ידי כמה עוד בתאריך 12.03.18 בשעה 08:20
אני שואל בגלל שהייתי בראיון עבודה, והייתה שם שאלה תכנותית (מול מחשב) רקורסיבית

עכשיו השאלה שלי היא כמה רקורסיה שאני פוגש בראיון עבודה גם תפגוש אותי במשרה עצמה, או שזה רק כלי סינון

השאלה הייתה לעשות את קבוצת החזקה של קבוצת int
כלומר בהינתן הקבוצה 1,2,3 אני צריך להחזיר 1 2 3 12 13 23 123 וקבוצה ריקה
כמובן שאפשר גם פתרון איטרטיבי
אבל המראיינים המליצו לי בחום לתת פתרון רקורסיבי


#1,יכמעט ולא
נכתב על-ידי warez_man בתאריך 12.03.18 בשעה 08:45
בתגובה להודעה #0
השאלה הזאת היא נטו לבדוק חשיבה רקורסיבית.

#2,יבמבחנים בדכ עדיף לתת תשובה ברקורסיה
נכתב על-ידי inno3D בתאריך 12.03.18 בשעה 21:03
בתגובה להודעה #0
אבל בתכלס זה לרוב פחות יעיל מבחינת זיכרון אז לא יוצא לכתוב יותר מידי רקורסיה

#3,יאני חושב שהמליצו כי הפתרון האיטרטיבי הוא פחות אינטואיטיבי וברקורסיה זה כמעט טבעי
נכתב על-ידי nadavs בתאריך 12.03.18 בשעה 21:28
בתגובה להודעה #0

#4,יאין בהכרח קשר בין שאלות ראיון עבודה לבין התפקיד עצמו
נכתב על-ידי ShocKi בתאריך 12.03.18 בשעה 21:32
בתגובה להודעה #0
נראה לי שאחת מהסיבות ששואלים על רקורסיה היא כי זה מושג שבצורה כזו או אחרת כל מתכנת פגש באיזשהו מקום בלימודיו.. זה קונספט שכולם צריכים להכיר ואפשר לבדוק בעזרתו חשיבה.

#5,ילבדוק צורת חשיבה שלא בהכרח פוגשים בעבודה עצמה?
נכתב על-ידי כמה עוד בתאריך 13.03.18 בשעה 13:34
בתגובה להודעה #4
@ShocKi

#6,ימכתב
נכתב על-ידי Crazy Lion בתאריך 13.03.18 בשעה 13:36
בתגובה להודעה #5
צריך איכשהוא לסנן בין מתמודדים שמגיעים מרקעים שונים , רקורסיה הוא קונספט לא הכי אינטואיטיבי ולכן זה מראה על צורת חשיבה ויכולת תפיסה של מתמודד.
ובנוסף, בדר"כ בשאלות כאלה הפתרון הרקורסיבי הכי יעיל.

#9,יאתה צריך דרך להשוות בין מועמדים.
נכתב על-ידי ShocKi בתאריך 13.03.18 בשעה 21:44
בתגובה להודעה #5
ברוב המקרים מגיעים מועמדים מרקעים שונים.. גם במשרות של בוגר ללא ניסיון מגיעים מועמדים מכל מיני מוסדות אקדמיים אין הכרח שכולם למדו את אותם הדברים ולכן צריך איזשהו מבחן אחיד שמתבסס על דברים שכולם אמורים לדעת.
מתעקשים יותר לרוב על הבנה ופחות על תכנות (עד גבול מסוים) מהסיבה שזה מאוד תלוי שפה.. יכולה להיות שאלה שמי שמגיע מרקע של Python זה יהיה לו ממש פשוט ומי שמגיע מרקע של Java זה יהיה יותר מורכב... הרי לכל שפה יש דברים שהיא יותר טרוויאלית עבורים ויש דברים שפחות...

#7,יזה משהו בסיסי אי אפשר להיות מתכנת בלי להבין את הקונספט
נכתב על-ידי משה הלולן בתאריך 13.03.18 בשעה 15:21
בתגובה להודעה #0
גם אם לא משתמשים בזה עדיין צריך להבין, כמו שצריך להיות עם ידע על זיכרון נגיד למרות שבתיכנות בjs בכל לא מתעסקים עם הזיכרון ישירות

#8,יממש לא ומי שמשתמש מטריל את שאר חברי הצוות שלו כי זה לא קריא בשיט
נכתב על-ידי afroman50 בתאריך 13.03.18 בשעה 20:42
בתגובה להודעה #0

#10,ילא חושב שיש שימוש לרקורסיה באיזשהי סביבת פרודקשן אמיתית.
נכתב על-ידי ShocKi בתאריך 13.03.18 בשעה 21:46
בתגובה להודעה #8

#11,יתודה חברים, תכלס השתכנעתי. אני חושב שאם מועמד יצליח ברקורסיה אז בטח בשאר הוא גם
נכתב על-ידי כמה עוד בתאריך 14.03.18 בשעה 08:29
בתגובה להודעה #0
יצליח. ואם המראיין בעצמו לא נרתע מרקורסיה אז זה אכן כלי סינון טוב

#12,ירקורסיה דווקא לא בהכרח יותר קשה מתכנון איטרטיבי
נכתב על-ידי Dark-Wish בתאריך 15.03.18 בשעה 21:26
בתגובה להודעה #11
רואים את זה במיוחד בתכנון דינמי, שפתרון עבורו הוא רקורסיבי טבעי ולהפוך אותו לאיטרטיבי לא בהכרח טריוויאלי
דוגמה - יש לך מבוך בינארי במטריצה nxn, פתרון רקורסיבי הוא הרבה יותר פשוט, ופתרון איטרטיבי לעומת זאת מקשה על העניין

#13,יכן
נכתב על-ידי Zippo בתאריך 16.03.18 בשעה 09:30
בתגובה להודעה #0

#14,י1+
נכתב על-ידי King_Cobra בתאריך 16.03.18 בשעה 09:34
בתגובה להודעה #13

#15,י+2
נכתב על-ידי Moshe4PRO בתאריך 16.03.18 בשעה 09:40
בתגובה להודעה #13

#16,ייש מקרים שאתה חייב רקורסיה. ריצה על עץ לדוגמא.
נכתב על-ידי aCoZz בתאריך 23.03.18 בשעה 15:11
בתגובה להודעה #0

#17,ילא חושב שחייב,
נכתב על-ידי Simple בתאריך 26.03.18 בשעה 15:03
בתגובה להודעה #16
אפשר להפוך כל רקורסיה לאיטרציה עם CPS

#18,ילדעתי זה כלי שמתכנת חייב לדעת,
נכתב על-ידי Simple בתאריך 26.03.18 בשעה 15:18
בתגובה להודעה #0
יש דברים שהצורה האיטרטיבית מאד מאד קשה והרקורסיבית דווקא פשוטה,למשל בבניית קומפיילר,יש המון שלבים שנורא נח ברקורסיה ונורא לא נח באיטרציה כמו בניית SCANNER.

#19,יבוודאי שיש, במוצר גדול - לא מעט
נכתב על-ידי sza בתאריך 26.03.18 בשעה 16:09
בתגובה להודעה #0

#20,ייש ולא מעט. אך הסיכוי של מתכנת מתחיל להיתקל בכך לא גבוה.
נכתב על-ידי zorro בתאריך 22.04.18 בשעה 01:05
בתגובה להודעה #0

#21,ימי שענה שיש שיסביר לי למה ובאיזו סיטואציה...
נכתב על-ידי afroman50 בתאריך 22.04.18 בשעה 14:28
בתגובה להודעה #0

#22,יdirectory traversal לדוגמה
נכתב על-ידי כובען בתאריך 22.04.18 בשעה 14:49
בתגובה להודעה #21

#23,ייש, בעיקר בשביל לעשות איזה סוג של data traversal.
נכתב על-ידי CaTz בתאריך 26.04.18 בשעה 22:24
בתגובה להודעה #0