עבור לתוכן

מתעניין ללימודי הנדסת מחשבים

Featured Replies

פורסם

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

בכל נושא אם אתה פותר מספיק תרגילים שום דבר לא יכול להפתיע אותך כי המוטו חוזר על עצמו בד"כ.

וצריך ללמוד כמובן בשניהם... אתה לא יכול לכתוב אלגוריתמים יעילים באמת בלי לדעת על מה אתה מדבר...

בתור אחד שנבחן בנושא שבוע הבא, אני חייב לא להסכים, ישנו מספר אינסופי של וריאציות לבעיות קיימות וכן מספר אינסופי של בעיות שעוד לא נחקרו (יש הוכחה לזה... לא ממש רלוונטי) DFS באלגוריתמים זה משהו מאד בסיסי, נעשה בו שימוש בהרבה דברים אבל זה לאו דווקא מגביל את מספר האפשרויות... נתן דוגמא מעולם התכנות, הפונציה (למרות שאני קורה לה יותר syntactic sugar) בשם FOR, תוכל לשאול כמה וויראציות יש על הפונקציה, הרי בספו של דבר כולן עושות איטרציה (על מבנה נתונים או כל דבר אחר) ולמרות זאת מספר השימושים הוא עצום. בנוגע לזה שצריך ללמוד בשביל לכתוב אלגוריתמים, מאד נכון, אלא אם כן אתה גאון. (ורובנו לא אוילר או דיניץ הבא).

למי שמחפש שריטה באמת גדולה במוח אני ממליץ על טופולוגיה (זה קורס של מתמטיקה, לא מדעי המחשב)

עשית אותו ? אני חושב לעשות אותו סמסטר הבא, חוו"ד ?

מטי.

  • תגובות 61
  • צפיות 10.4k
  • נוצר
  • תגובה אחרונה

משתתפים בולטים בדיון

פורסם
עשית אותו ? אני חושב לעשות אותו סמסטר הבא, חוו"ד ?

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

זה די נפוץ שם לתפוס אנשים עם זויות מוזרות בצוואר ובעיניים מנסים לדמיין דברים מסוימים (בקבוק קליין זה עוד כיף לעומת מה שיש שם)

פורסם

מספר אינסופי של בעיות שעוד לא נחקרו

לזה התכוונתי. אתה יכול להגיע לאלגוריתם גם בלי לדעת או להכיר אלגוריתמים אחרים. כמובן שזה רק יעזור שתדע, אבל אתה יכול להגיע לאותם אלגוריתמים שם בלי לדעת(לממש אותם בתוך האלגוריתם שלך). זה בערך מה שהולך בבחינה של אלגוריתמים(מי שהפרידו אצלו את מבני הנתונים מאלגוריתמים, מי שלא צריך גם לדעת לחשב סיבוכיות וזמן ריצה ע"י 3 השיטות). אתה לא יכול אפילו לנחש מה יתנו לך שם, לעומת מתמטיקה שבטוח יתנו לך תרגילים שפתרת איי פעם בכיתה.

לדוגמא: אלדוריתם שמחשב ומוצא את הפתרון למשחק הזה בידיעות אחרונות(לא זוכר תשם שלו). אתה יכול לפתור גם בלי להתחיל בכלל את הקורס אלגוריתמים. אתה צריך לדעת רק מה זה פסאודוקוד.

פורסם

לדוגמא: אלדוריתם שמחשב ומוצא את הפתרון למשחק הזה בידיעות אחרונות(לא זוכר תשם שלו). אתה יכול לפתור גם בלי להתחיל בכלל את הקורס אלגוריתמים

טוב, זו דוגמא למשחק פשוט שגם ב- brute force אתה יכול לפתור אותו בגדלים קטנים.

בשביל לפתור את זה עבור לוחות יותר גדולים אתה צריך למצוא אלגוריתם סריקה יעיל יותר.

פורסם

וכדי למצוא אלגוריתם כזה ששונה מBRUTE FORCE אתה לא צריך להבין גדול באלגוריתמים שונים. מה שצריך זה רק זמן.

פורסם

אתה טועה, וזה בגלל חוסר נסיון.

קח זמן... תמצא פתרון לבעיה באורדר של n בריבוע כאשר n זה אורך שורה (ועמודה כמובן).

הפתרון הוא ממש פשוט אם אתה יודע משהו על תכנון דינמי וכמעט בלתי אפשרי בלי הידע הזה.

מטי.

פורסם

בתור אחד שנבחן בנושא שבוע הבא, אני חייב לא להסכים, ישנו מספר אינסופי של וריאציות לבעיות קיימות וכן מספר אינסופי של בעיות שעוד לא נחקרו (יש הוכחה לזה... לא ממש רלוונטי) DFS באלגוריתמים זה משהו מאד בסיסי, נעשה בו שימוש בהרבה דברים אבל זה לאו דווקא מגביל את מספר האפשרויות... נתן דוגמא מעולם התכנות, הפונציה (למרות שאני קורה לה יותר syntactic sugar) בשם FOR, תוכל לשאול כמה וויראציות יש על הפונקציה, הרי בספו של דבר כולן עושות איטרציה (על מבנה נתונים או כל דבר אחר) ולמרות זאת מספר השימושים הוא עצום. בנוגע לזה שצריך ללמוד בשביל לכתוב אלגוריתמים, מאד נכון, אלא אם כן אתה גאון. (ורובנו לא אוילר או דיניץ הבא).

מטי.

ואני אמרתי את זה בתור אחד שנבחן בזה ביום ראשון (שהיה)

ופתר כמעט אינספור שאלות, בסוף אם אתה יודע ומכיר הרבה ניאנסים, אין כמעט שום דבר שמפתיע אותך, כי בסוף (תלוי בנושא)

משתמשים בדברים דומים לפתרונות שונים, זה מה שהופך את הכל לאלגנטי, ויחסית פשוט.

אני אמרתי DFS בגלל שזה בסיסי, ועושים בו שימוש בהמון דברים... כנל גם BFS, וכנ"ל FF או DINIC)

פורסם

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

פורסם

אני מדבר על הקורס "תכנון אלגוריתמים" שנלמד באוניברסיטה במסגרת לימודים לתואר, אני מאמין גם RK. על איזה קורס אתה מדבר. (חוג במתנ"ס ?), אם אתה לא מתכוון להסכים שיתכן, אולי, יש בעולם מישהו שיודע קצת יותר ממך בנושא מסויים אז חבל לי ולך על הזמן.

מטי.

פורסם

אל תדאג... אתה לא היחיד שלומד לתואר..

פורסם
  • מחבר

כדי להצליח בתיכנות צריך לחרוש ולחרוש ולפתור 989,375,652 תרגילים בחודש או שזה קשור גם למנת המשכל שלי ואז זה או שיש לי את זה או שאין לי את?

פורסם

כל דבר אתה יכול לחרוש ולחרוש ולהצליח ככה או להבין... הבעיה שבשביל להבין אתה צריך לרוב לחרוש לא מעט :)

בתכנות אתה צריך שיהיה לך את זה קודם כל אחרי זה אתה צריך גם להשקיע בזה לא מעט זמן - לפתור 100 מיליון תרגילים לא ממש עוזר כי בתכנות תכלס הדברים לא כל כך מגוונים כבר הכל מתבסס על מתמטיקה או דברים אחרים ברמת התכנות עצמו ברגע שאתה מכיר שפה טוב אז אתה מכיר אותה טוב לא צריך לפתור בשביל זה יותר מדי דברים.

פורסם

הבעיה הגדולה, כשנתונה לך בעיה כלשהי, היא לראות את האלגוריתם(הרעיון) שאותו "תסב" לשפת התכנות שבה אתה עובד, ולא ההסבה עצמה.

והאמת היא שגם 1,000,000,000 לא יספיקו לך כי תמיד יכולים להביא לך לפתח אלגוריתם שלא נתקלת בו. פשוט לא פותרים הרבה תרגילים כי זה USELESS.

פורסם

גישה מעניינת - לא לפתור כי תמיד יכולים להפתיע אותך... אז זהו שלא אם אתה פותר ומתרגל הרבה דברים אתה מתרגל טכניקה ומרגיל את המוח שלך לחשוב כה שכשתקבל את האלגוריתם שעוד לא ראית אתה תוכל לחשוב עליו ולפתור עדיין - תרגול זה חשוב!

פורסם

יש הבדל בין לא לפתור בכלל לבין לא לפתור הרבה....

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים