Example #1
0
        // טענת כניסה: הפעולה מקבלת רשימה של מספרים שלמים
        // טענת כניסה: הפעולה מחזירה את סכום כל איברי הרשימה
        // סיבוכיות זמן ריצה: O(n)
        public static int SumList(List <int> l)
        {
            int        sum = 0;
            Node <int> pos = l.GetFirst();

            while (pos != null)
            {
                sum += pos.GetInfo();
                pos  = pos.GetNext();
            }
            return(sum);
        }
Example #2
0
        // טענת כניסה: הפעולה מקבלת רשימה ממוינת של מספרים שלמים ומספר שלם
        // טענת יציאה: הפעולה מכניסה באופן ממוין את המספר לרשימה
        // סיבוכיות זמן ריצה: O(n)
        public static void InsertSorted(List <int> l, int n)
        {
            Node <int> pos    = l.GetFirst();
            Node <int> before = null;

            while (pos != null && n > pos.GetInfo())
            {
                before = pos;
                pos    = pos.GetNext();
            }
            l.Insert(before, n);
        }
Example #3
0
        /* הערות:
         * מחלקת עזר זו כוללת פעולות עזר על רשימה, מחסנית, תור ועץ בינארי
         * לכל פעולה כתובות מעליה (כהערות) טענת הכניסה, טענת היציאה וסיבוכיות זמן הריצה של הפעולה
         * הערה עם סימן קריאה משמעה פעולה חיצונית שקיימת במחלקת עזר זו - יש לכתוב את הפעולה החיצונית!
         * רוב הפעולות מקבלות טיפוס נתונים מסוג מספר שלם, אך יכולות לעבוד עם כל טיפוס אחר
         * © כל הזכויות שמורות לערן - Saurik
         * לבקשות, הערות והצעות: http://www.fxp.co.il/showthread.php?t=14343465
         * בהצלחה בבחינות!
         */


        ///
        /// רשימה
        ///
        //טענת כניסה: הפעולה מקבלת רשימה של מספרים שלמים ומספר שלם
        // טענת יציאה: הפעולה מחזירה "אמת" אם המספר נמצא ברשימה, אחרת מחזירה "שקר"
        // סיבוכיות זמן ריצה: O(n)
        public static bool IsExistList(List <int> l, int n)
        {
            Node <int> pos = l.GetFirst();

            while (pos != null)
            {
                if (pos.GetInfo() == n)
                {
                    return(true);
                }
                pos = pos.GetNext();
            }
            return(false);
        }