גררו מבחן, סיכום או צילום של מחברת — אני אקרא, אוודא שזה רלוונטי, ואחדד את התוכן (מושגים, סיכויי מבחן, מומחיות).
אם לא סימנתם — הקובץ נקרא לחילוץ עובדות בלבד ואז נמחק מהמערכת (זכויות יוצרים). העובדות שנלמדו נשארות ומשפרות את הקורס.
בקורס "מעבדה בתכנות מערכות" (20465) באוניברסיטה הפתוחה, רשימות מקושרות הן קונספט ליבה שמופיע באופן תדיר במבחנים, לרוב בשאלות כמו "question1" ו-"question3". סגנון הבחינה נוטה להתמקד ביישום מעשי של רשימות מקושרות בשפת C/C++, תוך דגש על הבנה עמוקה של ניהול זיכרון (הקצאה ושחרור), טיפול נכון במצביעים (כולל מצביעים למצביעים), ומקרי קצה (רשימה ריקה, צומת יחיד). המבחנים בוחנים לא רק את היכולת לכתוב קוד פונקציונלי, אלא גם את היכולת לזהות ולתקן שגיאות נפוצות כמו דליפות זיכרון או גישה למצביעי NULL. הבקיאות במימוש פעולות בסיסיות ומורכבות כאחד היא קריטית להצלחה.
רשימה מקושרת היא מבנה נתונים ליניארי ודינמי, המורכב מסדרה של אלמנטים הנקראים צמתים. בניגוד למערך, שבו האלמנטים מאוחסנים בזיכרון באופן רציף, צמתים ברשימה מקושרת יכולים להיות מפוזרים בזיכרון, והקשר ביניהם נוצר באמצעות מצביעים.
כל צומת מכיל מצביע אחד בלבד לצומת הבא. מעבר אפשרי רק קדימה. הצומת האחרון מצביע ל-NULL.
כל צומת מכיל שני מצביעים: אחד לצומת הבא (next) ואחד לצומת הקודם (prev). מאפשר מעבר קדימה ואחורה. דורש יותר זיכרון לכל צומת.
הצומת האחרון ברשימה מצביע בחזרה לראש הרשימה (או לצומת אחר ברשימה), במקום ל-NULL. יכולה להיות חד-כיוונית או דו-כיוונית.
malloc (או calloc), וכל פעולת מחיקה חייבת לכלול שחרור זיכרון באמצעות free. אי ביצוע free מוביל לדליפות זיכרון (Memory Leaks). בנוסף, יש לטפל בזהירות רבה במצביעים, במיוחד מצביעי NULL, כדי למנוע שגיאות גישה לזיכרון (Segmentation Fault).מושגים נוספים מאותו קורס
האוניברסיטה הפתוחה · תרגלו מול המבחנים האמיתיים