26-10-2005, 07:10
|
|
|
|
חבר מתאריך: 28.10.01
הודעות: 10,153
|
|
אלגוריתמים להוספת איבר,מחיקת איבר וכו'תוכל לחפש בגוגל
העיקרון הוא כזה: כל איבר במבנה נתנים בנוי משני חלקים: הנתונים עצמם וקישור (מצביע) לאיבר נוסף. בכל רשימה מקושרת חייב להיות עוגן שיתחיל ועוגן שיסיים את הרשימה. בשביל לבצע פעולות על רשימה מקושרת,אתה צריך להתחיל לחשוב כמו אנזים ממוצע (למדת ביולוגיה?). אתה יכול לפרק קשרים קיימים בין איברים,להוסיף קשרים חדשים ולשמור קשרים קיימים בצורה זמנית שלא ילכו לאיבוד.
רוצה דוגמא פשוטה?
יש לך רשימה מקושרת ואיבר א' מקושר לאיבר ב'. אתה רצה להכניס איבר ג' בין א' לב' :
1. שמור את הקישור בין א' לב' במקום זמני.
2. צור את איבר ג' שכרגע אין לו שום קישור.
3. צור קישור בין איבר ג' לאיבר ב' ב השתמש בקישור ששמרת בצעד 1. כרגע גם א' וגם ג' מקושרים לב'.
3. החלף את הקישור בין א' לב' בקישור חדש בין א' לג'.
לפני שאתה כתב את האלגוריתם,תבנה ותפרק את הקשרים על דף נייר.
הדפסה של רשימה מקושרת זה משימה קלה מאד : לולאה פשוטה שמדפיסה את האיבר הקיים ועוברת לאיבר הבא בעזרת הקישור שכבר קיים.
_____________________________________
|