Example #1
0
        static void Main(string[] args)
        {
            var doubleLinkedList = new DoubleLinkedList <int>();

            doubleLinkedList.Add(1);
            doubleLinkedList.Add(2);
            doubleLinkedList.Add(3);
            doubleLinkedList.Add(4);
            doubleLinkedList.Add(5);
            doubleLinkedList.Add(6);
            ShowResult(doubleLinkedList);

            doubleLinkedList.Delete(3);
            ShowResult(doubleLinkedList);

            var reverse = doubleLinkedList.Reverse();

            ShowResult(reverse);

            var circularList = new CircularLinkedList <int>();

            circularList.Add(1);
            circularList.Add(2);
            circularList.Add(3);
            circularList.Add(4);
            circularList.Add(5);
            circularList.Add(6);
            ShowResult(circularList);

            circularList.Delete(6);
            ShowResult(circularList);

            Console.ReadLine();
        }
Example #2
0
        static void Main(string[] args)
        {
            const int size = 5;

            int[] vec = new int[size] {
                4, 1, 5, 7, 2
            };

            DoubleLinkedList <int> list = new DoubleLinkedList <int>();

            list.AddFirst(vec[1]);
            list.AddLast(vec[2]);
            list.AddLast(vec[3]);
            list.AddFirst(vec[0]);
            list.AddLast(vec[4]);

            /* ***** */

            Console.WriteLine("\n  Input data Test\n-------------------\n");

            IDoubleLinkedListNode <int> Temp = list.First;

            for (int i = 0; i < size; i++)
            {
                Assert.AreEqual(vec[i], Temp.Value);
                Console.WriteLine("  Pos: {0,2},  Value: {1,2}\n", i, Temp.Value);
                Temp = Temp.Next;
            }

            /* ***** */

            Console.WriteLine("\n  Reverse Test\n----------------\n");

            list.Reverse();
            Temp = list.First;
            for (int i = size - 1; i >= 0; i--)
            {
                Assert.AreEqual(vec[i], Temp.Value);
                Console.WriteLine("  Pos: {0,2},  Value: {1,2}\n", (size - 1) - i, Temp.Value);
                Temp = Temp.Next;
            }
        }