示例#1
0
        static void Main(string[] args)
        {
            var head = new Node(1);

            DoublyLinkedList linkedList = new DoublyLinkedList();

            linkedList.AddTail(new Node(1));
            linkedList.AddTail(new Node(2));
            linkedList.AddTail(new Node(3));
            linkedList.AddHead(new Node(0));


            int[] myArrayFromLinkedList = linkedList.ToArray();

            Console.WriteLine("ToArray method result");

            for (int i = 0; i < myArrayFromLinkedList.Length; i++)
            {
                Console.WriteLine(myArrayFromLinkedList[i]);
            }

            Console.WriteLine("ForEach method result");
            linkedList.ForEach(num => Console.WriteLine(num));

            linkedList.RemoveHead();
            linkedList.RemoveTail();

            Console.WriteLine("After removing head and tail");
            linkedList.ForEach(num => Console.WriteLine(num));


            linkedList.AddHead(new Node(0));
            linkedList.AddTail(new Node(3));

            Console.WriteLine("After adding head and tail anew");
            linkedList.ForEach(num => Console.WriteLine(num));

            Console.WriteLine("After implementing IEnumerable");

            foreach (Node item in linkedList)
            {
                Console.WriteLine(item.Value);
            }
        }
示例#2
0
        static void Main(string[] args)
        {
            DoublyLinkedList <int> intList = new DoublyLinkedList <int>();

            for (int i = 0; i < 3; i++)
            {
                intList.AddHead(i + 2);
            }

            for (int i = 0; i < 3; i++)
            {
                intList.AddLast(i + 1);
            }

            intList.ForEach(x => Console.WriteLine(x + " "));
            Console.WriteLine("----------");

            for (int i = 0; i < 6; i++)
            {
                Console.WriteLine(intList.RemoveFirst());
            }

            Console.WriteLine("----------");

            DoublyLinkedList <string> stringList = new DoublyLinkedList <string>();

            for (int i = 0; i < 3; i++)
            {
                stringList.AddLast($"Gosho {i + 2}");
            }

            for (int i = 0; i < 3; i++)
            {
                stringList.AddLast($"Pesho {i + 1}");
            }

            stringList.ForEach(x => Console.WriteLine(x + " "));

            Console.WriteLine("----------");

            Console.WriteLine(string.Join('|', stringList.ToArray()));

            Console.WriteLine("----------");

            for (int i = 0; i < 6; i++)
            {
                Console.WriteLine(stringList.RemoveFirst());
            }

            var list = new DoublyLinkedList <int>();

            for (int i = 0; i < 10; i++)
            {
                list.AddHead(i);
            }

            Console.WriteLine("NEW NEW NEW NEW");
            foreach (var item in list)
            {
                Console.WriteLine($"VALUE : {item.Value}");
            }
        }