Menu
Coddy logo textTech
מסלול למידה

מבני נתונים ואלגוריתמים ב־Go

Go נותנת לכם slices ו־maps ומשאירה את השאר לכם: אין טיפוס של מחסנית, תור או קבוצה, והערימה ב־container/heap לא עושה כלום עד שאתם מממשים את heap.Interface. במסלול הזה אתם בונים כל מבנה ב־Go עם structs ומצביעים, ואז ממיינים, משתמשים ברקורסיה ומחפשים בגרפים בעזרתם, ומסיימים בשאלות ראיונות שנבדקות. בחינם, בדפדפן, עם תעודה ברוב הקורסים.

377 שיעורים228 אתגרים702 שאלות חידון

DSA ב־Go, שלב אחר שלב

38 קורסים377 שיעורים228 אתגרים702 שאלות חידון

כל שלב הוא אוסף של קורסים קיימים ב־Coddy, וכל כפתור התחלה פותח אותם ב־Go. שלושת הקורסים שעדיין לא נלמדים ב־Go מופיעים אחרי השלבים.

  1. 1
    להתחיל את השלב הזהלהתחילמחסנית, תור, עץ בינארי, טבלת גיבוב ורשימה מקושרת, כל אחד נבנה מאפס ב־Go ואז משמש לפתרון בעיות. בסופו, slice כמחסנית ו־map כקבוצה הן בחירות שאתם יודעים להצדיק, וטיפוס התור שאין ב־Go הוא אחד שכתבתם.להתחיל
  2. 2
    להתחיל את השלב הזהלהתחילרשימה מקושרת דו־כיוונית, ערימות ותורי עדיפויות, עצי trie, גרפים ועץ AVL המאזן את עצמו. container/list היא הראשונה מביניהם, מוכנה מראש; אחרי השלב הזה חמש המתודות של heap.Interface הגיוניות, כי בניתם ערימה בעצמכם, והעץ המאוזן ש־Go אף פעם לא סיפקה הוא אחד שאתם יכולים לבנות.להתחיל
  3. 3
    להתחיל את השלב הזהלהתחילמיון בועות, בחירה, הכנסה, מיזוג, מהיר, ערימה, מנייה ובסיס, נכתבים ב־Go ונצפים בוויזואלייזר. sort.Slice משתמשת ב־pattern-defeating quicksort מאז Go 1.19, גם slices.Sort משתמשת בו, ואף אחת מהן לא יציבה, ולכן קיימת sort.SliceStable; אחרי השלב הזה תדעו מה פירוש כל אחת מהמילים האלה.להתחיל
  4. 4
    להתחיל את השלב הזהלהתחילאתגרי רקורסיה ב־Go, שבה המחסניות של goroutines מתחילות קטנות וגדלות לפי הצורך, כך שרקורסיה בעומק של אלפי קריאות כמעט אף פעם לא גולשת. תנאי עצירה חסר עדיין פוגע בתקרה, 1 GB של מחסנית במערכות 64 ביט כברירת מחדל, ונגמר בשגיאה קטלנית ולא בתוכנית איטית. תכנות דינמי ומניפולציית ביטים מופיעים אחרי השלבים, כי הם נלמדים ב־Python וב־C++.להתחילדף ייעודי
  5. 5
  6. 6
מה מקבלים
כל מה שתשתמשו בו כדי ללמוד לתכנת

ללמוד תוך כדי עשייה

כתבו קוד אמיתי, שלפו נתונים ממסדי נתונים, בנו אתרים ושלטו בפרומפטים ל-AI. השיעורים האינטראקטיביים שלנו מכסים כל מיומנות שמפתחים מודרניים צריכים.

playground.js
עורך קוד
1const greeting = "Hello, Coddy!"
2function sayHi(name) {
3    return greeting + " " + name
4}
5
bottombar Collapse icon
בדיקה #1test Case Success icon
בדיקה #2test Case Success icon
בדיקה #3test Case Failure icon
קלט
"Alex"
פלט
"Hello, Coddy! Alex"

לבנות רצף

שמרו על עקביות וראו איך ההתקדמות שלכם גדלה! עקבו אחרי הרגל התכנות היומי, הגנו על הרצף עם ימי הקפאה וקבלו פרסים על כל יום שאתם מגיעים.

12 ימי רצף

חזרו מחר כדי לשמור על הרצף!

fire Filled icon
left icon

January 2026

right icon

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

21

22

23

24

25

26

27

28

29

30

product Double Or Nothing icon

הכל או כלום

יום 5 מתוך 7

fire Freeze icon

הקפאת רצף

2 left

לתכנת מכל מקום

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

Python
7רצף
250ניקוד
5אנרגיה
משתנים
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Right Done icon
journey Hex Done Base iconjourney Hex Done Shadow iconjourney Hex Done Top iconjourney Lesson Done icon
journey Path Left Done icon
journey Hex Active Base iconjourney Hex Active Shadow iconjourney Hex Active Top iconjourney Lesson Theory Challenge icon
להמשיך
journey Path Right icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson Theory Challenge icon
journey Path Left icon
journey Hex Locked Base iconjourney Hex Locked Shadow iconjourney Hex Locked Top iconjourney Lesson All icon
מסלול
יעדים
טבלת הדירוג
פרופיל
4.9
כוכבכוכבכוכבכוכבכוכב
דירוג

אתם לא לבד

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

ליגת המתמודדים
ליגת המתמודדים7 המובילים עולים
leaderboard First icon1
avatar 1 icon
fire Filled icon
Alex7+ Days
2840
leaderboard Second icon2
avatar 2 icon
fire Filled icon
Jordan7+ Days
2650
leaderboard Third icon3
avatar 3 icon
fire Filled icon
Sam7+ Days
2420
4
avatar 4 icon
Casey
2180
5
avatar placeholder icon
fire Filled icon
Morgan7+ Days
1950
leaderboard Arrow Up iconאזור העלייהleaderboard Arrow Up icon

כל הדרכים ללמוד

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

מבוא למשתנים
אודיו

משתנה הוא מיכל עם שם ששומר ערך שאפשר להתייחס אליו בהמשך התוכנית.

ב-Python יוצרים משתנה על ידי כתיבת השם, סימן שווה, ואז הערך שרוצים לשמור.

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

1xשרה

לקבל תעודה

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

Coddyתעודת סיום
תעודה זו מאשרת כיישראל ישראליהשלים/ה בהצלחה את
python iconיסודות Python
מאומת
תאריךינו׳ 2026
LinkedInלהוסיף ל-LinkedIn

למה ללמוד DSA ב־Go ב־Coddy

  • המבנים ש־Go משאירה לכם. Go כוללת slices ו־maps ונעצרת שם: מחסנית היא slice שעושים לו append וחותכים אותו מחדש, קבוצה היא map[T]struct{}, ואין בכלל טיפוס של תור או עץ. לדעת לכתוב את החסרים, ומה עולה כל פעולה על slice, זה חלק מלדעת Go.
  • structs ומצביעים, בלי שום דבר נסתר. אין ב־Go מחלקות: צומת הוא struct עם מצביע לצומת הבא, ומתודות נתלות על הטיפוס. רשימה מקושרת או עץ נראים בדיוק כמו מה שהם, גנריות (מאז Go 1.18) הופכת אותם לשימושיים לכל טיפוס איבר, ואיסוף הזבל אומר שאין malloc או free לנהל.
  • כמעט כל המסלול ב־Go. כל מבנה נתונים, מיון, אלגוריתם גרפים, אתגר רקורסיה וחבילת ראיונות נלמדים ב־Go. שלושה נלמדים במקום אחר ומופיעים אחרי השלבים עם קישור לכל אחד: תכנות דינמי וסדרת הראיונות של Python ב־Python, ומניפולציית ביטים ב־C++. מניפולציית ביטים נקראת בטבעיות מתוך Go, שיש בה את &, |, ^, << ו־>> של C++ והיא כותבת NOT בתור ^x.
  • נבדק כמו בראיון. כל שיעור מסתיים באתגר Go שנבדק במקרי בדיקה, וכשאחד נכשל, Bugsy קורא את הקוד שלכם ומכוון אתכם לתיקון בלי לתת את התשובה. תעודה חינמית ברוב הקורסים, וכל אחת ניתנת לאימות בכתובת משלה.

שאלות נפוצות על DSA ב־Go

האם Go טובה למבני נתונים ואלגוריתמים?

כן. היא מתקמפלת לקוד נייטיב מהיר, התחביר שלה קטן מספיק כך שרוב מה שאתם קוראים הוא האלגוריתם, וגנריות (מאז Go 1.18) הופכת מחסנית או ערימה עם טיפוסים לשימוש חוזר. המחיר הוא ספרייה סטנדרטית רזה: מעבר ל־slices, ל־maps, ל־container/list ול־container/heap, את המבנים אתם כותבים בעצמכם, ובמסלול לימוד זו בדיוק הנקודה. Go גם מריצה חלק גדול מתשתיות הענן של היום, כולל Docker ו־Kubernetes, מה שהופך אותה לשפת ראיונות טבעית לתפקידי Backend.

איזה טיפוס או חבילה של Go מתאימים לאיזה מבנה נתונים?

slice הוא מערך דינמי, ועם append וחיתוך מחדש הוא גם המחסנית שלכם; map היא טבלת גיבוב, ו־map[T]struct{} היא הקבוצה האידיומטית; container/list היא רשימה מקושרת דו־כיוונית; ו־container/heap מריצה ערימה בינארית מעל כל טיפוס שמממש את heap.Interface. אין טיפוס של תור, עץ, trie או גרף, ולכן אותם אתם בונים בעצמכם, בשלבים אחד ושתיים.

איך עובדת container/heap ב־Go?

אתם מממשים את heap.Interface על טיפוס slice משלכם: Len, Less ו־Swap מתוך sort.Interface, ועוד Push ו־Pop, שרק מוסיפות לסוף ה־slice ומסירות ממנו. אחר כך קוראים לפונקציות החבילה heap.Push ו־heap.Pop, אף פעם לא למתודות שלכם, והן מבצעות את ההזזות למעלה ולמטה ששומרות על הסדר. זה נראה מוזר עד שכתבתם ערימה בעצמכם, ובשלב השני אתם עושים בדיוק את זה.

למה מעבר על map ב־Go נותן סדר שונה בכל פעם?

כי Go הופכת את סדר המעבר על map לאקראי בכוונה, כדי שאף תוכנית לא תתחיל לסמוך עליו. לטבלת גיבוב אין סדר בעל משמעות בשום שפה; Go רק דואגת שתשימו לב. כשהסדר חשוב, כמו בפלט שטסט משווה, אספו את המפתחות ל־slice ומיינו אותו, או החזיקו slice לצד ה־map.

אילו קורסים במסלול הזה לא נלמדים ב־Go?

שלושה: תכנות דינמי וסדרת הראיונות של Python, שנלמדים ב־Python, ומניפולציית ביטים, שנלמדת ב־C++. הם מופיעים אחרי השלבים, כל אחד עם קישור שפותח אותו בשפה שלו. טבלת memo ב־Go היא slice או map, ו־Go מוסיפה אופרטור ביטים אחד שאין ב־C++: &^, AND NOT, שמאפס באופרנד השמאלי כל ביט שדלוק באופרנד הימני.

האם צריך לדעת Go לפני שמתחילים את המסלול?

structs, מצביעים, slices, maps ומתודות, לכל הפחות; גנריות עוזרת, ואפשר ללמוד אותה בדרך. אם הם חדשים לכם, קורס Go של Coddy מביא אתכם לשם קודם, בחינם, והמסלול הזה ממשיך מהמקום שבו הוא מסתיים.

מסלולי למידה נוספים

אותם קורסים, מסודרים לתפקיד אחר. ההתקדמות עוברת איתכם: קורס שסיימתם במסלול אחד נספר בכל מסלול שכולל אותו.

כל מסלולי הלמידה
איור של שפות התכנות ב-Coddy

להתחיל את מסלול מבני נתונים ואלגוריתמים בחינם

להתחיל ללמוד