public static void Main()
        {
            var doublyLinkedList = new DoublyLinkedList <int>();

            doublyLinkedList.AddFirst(5);
            doublyLinkedList.AddFirst(10);
            doublyLinkedList.AddFirst(99);

            doublyLinkedList.AddLast(23);
            doublyLinkedList.AddLast(7);

            Console.WriteLine(doublyLinkedList.RemoveFirst());   //99
            Console.WriteLine(doublyLinkedList.RemoveLast());    //7

            doublyLinkedList.ForEach(n => Console.WriteLine(n)); //10, 5, 23 - Each on the new line!

            var arr = doublyLinkedList.ToArray();

            Console.WriteLine(string.Join(" ", arr)); //10, 5, 23

            //foreach (var n in doublyLinkedList)
            //{
            //    Console.WriteLine(n);
            //}
        }
Ejemplo n.º 2
0
        public static void Main(string[] args)
        {
            DoublyLinkedList <int> list = new DoublyLinkedList <int>();

            list.AddFirst(3);
            // 3
            list.AddFirst(2);
            // 2 3
            list.AddFirst(1);
            // 1 2 3
            list.AddLast(4);
            // 1 2 3 4
            list.AddFirst(0);
            // 0 1 2 3 4
            list.AddLast(100);
            // 0 1 2 3 4 100
            list.RemoveFirst();
            // 1 2 3 4 100
            list.RemoveLast();
            // 1 2 3 4
            list.AddLast(5);
            // 1 2 3 4 5
            Console.WriteLine(string.Join("-", list.ToArray()));
            // 1-2-3-4-5
            list.ForEach(Console.WriteLine);
        }
Ejemplo n.º 3
0
        public static void Main()
        {
            // testing generic DoublyLinkedList<T>
            DoublyLinkedList <int> listInt = new DoublyLinkedList <int>();

            Console.WriteLine(listInt.Count);                                                                                                   // 0
            Console.WriteLine(listInt.Head == null ? "null" : listInt.Head.Value.ToString());                                                   // null
            Console.WriteLine(listInt.Head == null ? "null" : listInt.Head.Previous == null ? "null" : listInt.Head.Previous.Value.ToString()); // null
            Console.WriteLine(listInt.Head == null ? "null" : listInt.Head.Next == null ? "null" : listInt.Head.Next.Value.ToString());         // null

            // testing AddFirst(int element)
            listInt.AddFirst(21);
            listInt.AddFirst(5);// 5 21

            // testing AddLast(int element)
            listInt.AddLast(5);
            listInt.AddLast(21);// 5 21 5 21

            // testing RemoveFirst()
            Console.WriteLine(listInt.RemoveFirst());// 5

            // testing RemoveLast()
            Console.WriteLine(listInt.RemoveLast());// 21

            // testing ForEach(Action<int>)
            listInt.ForEach(Console.WriteLine);

            // testing ToArray()
            Console.WriteLine(string.Join(' ', listInt.ToArray()));// 21 5


            // testing generic DoublyLinkedList<T>
            DoublyLinkedList <string> listStr = new DoublyLinkedList <string>();

            Console.WriteLine(listStr.Count);                                                                                        // 0
            Console.WriteLine(listStr.Head == null ? "null" : listStr.Head.Value.ToString());                                        // null
            Console.WriteLine(listStr.Head == null ? "null" : listStr.Head.Previous == null ? "null" : listStr.Head.Previous.Value); // null
            Console.WriteLine(listStr.Head == null ? "null" : listStr.Head.Next == null ? "null" : listStr.Head.Next.Value);         // null

            // testing AddFirst(int element)
            listStr.AddFirst("Pesho");
            listStr.AddFirst("Gosho");// Gosho Pesho

            // testing AddLast(int element)
            listStr.AddLast("Peter");
            listStr.AddLast("George");// Gosho Pesho Peter George

            // testing RemoveFirst()
            Console.WriteLine(listStr.RemoveFirst());// Gosho

            // testing RemoveLast()
            Console.WriteLine(listStr.RemoveLast());// George

            // testing ForEach(Action<int>)
            listStr.ForEach(Console.WriteLine);

            // testing ToArray()
            Console.WriteLine(string.Join(' ', listStr.ToArray()));// Pesho Peter
        }
Ejemplo n.º 4
0
        static void Main(string[] args)
        {
            DoublyLinkedList list = new DoublyLinkedList();

            list.AddFirst(5);
            list.AddFirst(8);
            list.AddFirst(3);
            list.AddFirst(4);
            list.AddFirst(9);
            list.RemoveFirst();
            list.ForEach(x => Console.WriteLine(x));
        }
Ejemplo n.º 5
0
        public static void Main(string[] args)
        {
            DoublyLinkedList myLinkedList = new DoublyLinkedList();

            myLinkedList.AddFirst(2);
            myLinkedList.AddFirst(1);
            myLinkedList.AddLast(3);
            myLinkedList.AddLast(4);
            myLinkedList.AddLast(5);
            myLinkedList.RemoveFirst();
            myLinkedList.RemoveLast();

            myLinkedList.ForEach(n => Console.WriteLine(n));
        }
        static void Main(string[] args)
        {
            DoublyLinkedList list = new DoublyLinkedList();

            for (int i = 0; i < 3; i++)
            {
                list.AddFirst(i + 1);
            }

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

            list.ForEach(n => Console.WriteLine(n));

            for (int i = 0; i < 3; i++)
            {
                list.RemoveLast();
            }

            int[] arr = list.ToArray();

            Console.WriteLine(list[0]);
        }
Ejemplo n.º 7
0
        static void Main(string[] args)
        {
            DoublyLinkedList doublyLinkedList = new DoublyLinkedList();

            Console.WriteLine("Adding....");
            for (int i = 1; i < 6; i++)
            {
                int currElement = i;
                doublyLinkedList.AddFirst(currElement);
            }

            for (int i = 1; i < 6; i++)
            {
                int currElement = i;
                doublyLinkedList.AddLast(currElement);
            }
            Console.WriteLine("Stop Adding....");

            doublyLinkedList.ForEach(n => Console.WriteLine(n));
            Console.WriteLine("Removing....");
            for (int i = 0; i < 3; i++)
            {
                Console.WriteLine(doublyLinkedList.RemoveFirst());
                Console.WriteLine(doublyLinkedList.RemoveLast());
            }
            Console.WriteLine("Stop Removing");

            doublyLinkedList.ForEach(n => Console.WriteLine(n));
            int[] array = doublyLinkedList.ToArray();
            Console.WriteLine(string.Join(" ", array));
        }
Ejemplo n.º 8
0
        static void Main(string[] args)
        {
            DoublyLinkedList list = new DoublyLinkedList();

            for (int i = 0; i < 10; i++)
            {
                list.AddFirst(new Node(i));
            }
            for (int i = 0; i < 10; i++)
            {
                list.AddLast(new Node(i));
            }

            Console.WriteLine(list.RemoveFirst().Value + " remove");
            Console.WriteLine(list.RemoveFirst().Value + " remove");
            Console.WriteLine(list.RemoveFirst().Value + " remove");

            Console.WriteLine(list.RemoveLast().Value + " remove");
            Console.WriteLine(list.RemoveLast().Value + " remove");
            Console.WriteLine(list.RemoveLast().Value + " remove");

            list.ForEachFromHead(node => Console.WriteLine(node.Value));
            list.ForEachFromTail(node => Console.WriteLine(node.Value));


            int[] array = list.ToArrays();
        }
Ejemplo n.º 9
0
        static void Main(string[] args)
        {
            DoublyLinkedList <string> list = new DoublyLinkedList <string>();

            for (int i = 0; i < 10; i++)
            {
                list.AddFirst(new ListNode <string>(i.ToString()));
            }
            for (int i = 0; i < 10; i++)
            {
                list.AddLast(new ListNode <string>(i.ToString()));
            }

            Console.WriteLine(list.RemoveFirst().Value + " remove");
            Console.WriteLine(list.RemoveFirst().Value + " remove");
            Console.WriteLine(list.RemoveFirst().Value + " remove");

            Console.WriteLine(list.RemoveLast().Value + " remove");
            Console.WriteLine(list.RemoveLast().Value + " remove");
            Console.WriteLine(list.RemoveLast().Value + " remove");

            list.ForEach(node => Console.WriteLine(node.Value));

            string[] array = list.ToArrays();
        }
Ejemplo n.º 10
0
        public static void Main()
        {
            var list = new DoublyLinkedList <int>();

            for (int i = 1; i <= 10; i++)
            {
                list.AddFirst(i);
            }

            for (int i = 1; i <= 10; i++)
            {
                list.AddLast(i);
            }

            list.ForEach(n => Console.Write(n + " "));
            Console.WriteLine();

            for (int i = 1; i <= 10; i++)
            {
                list.RemoveFirst();
            }

            list.ForEach(n => Console.Write(n + " "));

            int[] arr = list.ToArray();

            foreach (var element in list)
            {
                Console.WriteLine(element);
            }
        }
Ejemplo n.º 11
0
        public static void Main(string[] args)
        {
            DoublyLinkedList <int> doublyLinkedList = new DoublyLinkedList <int>();

            for (int i = 1; i <= 10; i++)
            {
                doublyLinkedList.AddFirst(i);
            }

            for (int i = 1; i <= 10; i++)
            {
                doublyLinkedList.AddLast(i);
            }

            doublyLinkedList.
            ForEach(n => Console.Write(n + " "));

            Console.WriteLine();
            Console.WriteLine(doublyLinkedList[5]);

            for (int i = 1; i <= 10; i++)
            {
                doublyLinkedList.RemoveFirst();
            }

            Console.WriteLine();

            doublyLinkedList.
            ForEach(n => Console.Write(n + " "));

            int[] arr = doublyLinkedList.ToArray();
        }
Ejemplo n.º 12
0
        static void Main(string[] args)
        {
            var list = new DoublyLinkedList <int>();

            list.AddFirst(55);
            list.AddLast(2);
            list.AddLast(5);
        }
Ejemplo n.º 13
0
        static void Main(string[] args)
        {
            DoublyLinkedList MyList = new DoublyLinkedList();

            // 2 1 4 5
            MyList.AddFirst(1);
            MyList.AddFirst(2);
            MyList.AddFirst(3);
            MyList.AddLast(4);
            MyList.AddLast(5);
            MyList.AddLast(6);
            MyList.RemoveFirst();
            MyList.RemoveLast();

            MyList.ForEach();
            int[] output = MyList.ToArray();
            Console.WriteLine(string.Join(" ", output));
        }
Ejemplo n.º 14
0
        static void Main()
        {
            DoublyLinkedList doblyLinkedList = new DoublyLinkedList();

            doblyLinkedList.AddFirst(1);
            doblyLinkedList.AddFirst(2);
            doblyLinkedList.AddFirst(3);
            doblyLinkedList.AddFirst(4);

            doblyLinkedList.ForEach(x => Console.WriteLine(x));

            Console.WriteLine();

            foreach (var item in doblyLinkedList.ToArray())
            {
                Console.WriteLine(item);
            }
        }
        static void Main()
        {
            DoublyLinkedList doublyLinkedList = new DoublyLinkedList();

            for (int i = 1; i <= 10; i++)
            {
                doublyLinkedList.AddFirst(i);
            }

            int[] arr = doublyLinkedList.ToArray();
        }
Ejemplo n.º 16
0
        public static void Main(string[] args)
        {
            DoublyLinkedList list = new DoublyLinkedList();

            // 15 <-> 10 <-> 5
            list.AddFirst(5);
            list.AddFirst(10);
            list.AddFirst(15);

            Action <int> action = l => Console.Write($"{l} ");

            list.ForEach(action);
            Console.WriteLine();
            Console.WriteLine(list.Count == 3);

            // 15 <-> 10 <-> 5 <-> 20 <-> 25
            list.AddLast(20);
            list.AddLast(25);

            list.ForEach(action);
            Console.WriteLine();
            Console.WriteLine(list.Count == 3);

            int[] array = list.ToArray();
            Console.WriteLine(string.Join(", ", array));

            Console.WriteLine(list.Count == 5);

            Console.WriteLine((int)list.RemoveFirst() == 15);
            Console.WriteLine((int)list.RemoveFirst() == 10);
            Console.WriteLine(list.Count == 3);

            // 5 <-> 20 <-> 25
            list.ForEach(action);
            Console.WriteLine();

            Console.WriteLine((int)list.RemoveLast() == 25);
            Console.WriteLine((int)list.RemoveLast() == 20);
            Console.WriteLine((int)list.RemoveLast() == 5);
            Console.WriteLine(list.Count == 0);
        }
Ejemplo n.º 17
0
        public static void Main(string[] args)
        {
            var linkedList = new DoublyLinkedList();

            linkedList.AddFirst(1);
            linkedList.AddFirst(2);
            linkedList.AddFirst(3);

            linkedList.AddLast(1);
            linkedList.AddLast(2);
            linkedList.AddLast(3);

            linkedList.ForEach(Console.WriteLine);
            Console.WriteLine(linkedList.Count == 3);

            Console.WriteLine(linkedList.RemoveFirst());
            Console.WriteLine(linkedList.RemoveLast());

            int[] arr = linkedList.ToArray();
            Console.WriteLine(string.Join(" - ", arr));
        }
Ejemplo n.º 18
0
        static void Main(string[] args)
        {
            DoublyLinkedList <int> myList = new DoublyLinkedList <int>(new int[] { 5, 7, 12 });

            myList.ForEach(Console.WriteLine);

            myList.AddFirst(100);
            myList.ForEach(Console.WriteLine);

            myList.AddLast(2);
            myList.ForEach(Console.WriteLine);

            Console.WriteLine($"Removed item: {myList.RemoveLast()}");

            Console.WriteLine($"Removed item: {myList.RemoveFirst()}");

            int[] arr = myList.ToArray();
            myList.ForEach(Console.WriteLine);

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

            DoublyLinkedList <string> myListStr = new DoublyLinkedList <string>(new string[] { "5", "7", "12" });

            myListStr.AddFirst("Pesho");
            myListStr.AddLast("Gosho");

            myListStr.AddFirst("100");
            myListStr.AddLast("2");

            Console.WriteLine($"Removed item: {myListStr.RemoveLast()}");

            Console.WriteLine($"Removed item: {myListStr.RemoveFirst()}");

            string[] arrStr = myListStr.ToArray();
            myListStr.ForEach(Console.WriteLine);
        }
Ejemplo n.º 19
0
        static void Main(string[] args)
        {
            DoublyLinkedList playList = new DoublyLinkedList();

            for (int i = 1; i < 5; i++)
            {
                playList.AddFirst(i);
                Console.WriteLine(playList.Head.Value);
            }


            playList.RemoveLast();
            Console.WriteLine(playList.Tail.Value);
            playList.RemoveLast();
            Console.WriteLine(playList.Tail.Value);
        }
Ejemplo n.º 20
0
        static void Main(string[] args)
        {
            DoublyLinkedList list = new DoublyLinkedList();

            for (int i = 1; i <= 10; i++)
            {
                list.AddFirst(i);
            }
            Console.WriteLine(list.RemoveFirst());
            Console.WriteLine(list.RemoveFirst());
            Console.WriteLine(list.RemoveFirst());
            Console.WriteLine(list.RemoveLast());
            Console.WriteLine(list.RemoveLast());
            Console.WriteLine(list.RemoveLast());
            list.ForEach(n => Console.WriteLine(n));
            Console.WriteLine(string.Join(" ", list.ToArray()));
        }
Ejemplo n.º 21
0
        static void Main(string[] args)
        {
            var myList = new DoublyLinkedList <int>();

            for (int i = 0; i < 5; i++)
            {
                myList.AddFirst(i);
                myList.AddLast(i);
            }
            myList.RemoveFirst();
            myList.RemoveLast();

            myList.ForEach(x => Console.WriteLine(x));

            var arrr = myList.ToArray();

            foreach (var number in arrr)
            {
                Console.Write(number);
            }
        }
Ejemplo n.º 22
0
        static void Main(string[] args)
        {
            DoublyLinkedList <int> list = new DoublyLinkedList <int>();

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

            Console.WriteLine(list.RemoveFirst());
            Console.WriteLine(list.RemoveLast());
            Console.WriteLine();
            list.ForEach(n => Console.WriteLine(n));

            int[] listToArray = list.ToArray();

            list.AddFirst(100);
            list.AddLast(100);

            list.ForEach(n => Console.WriteLine(n));
        }
Ejemplo n.º 23
0
        static void Main(string[] args)
        {
            DoublyLinkedList <int> list = new DoublyLinkedList <int>();

            for (int i = 0; i < 9; i++)
            {
                list.AddFirst(i);
            }

            Console.WriteLine("\nAfter added heads:");
            Console.WriteLine(list);

            for (int i = 0; i < 9; i++)
            {
                list.AddLast(i);
            }

            Console.WriteLine("\nAfter added tails:");
            Console.WriteLine(list);


            Console.WriteLine("\nValues > 3:");
            Console.WriteLine(list.Where(i => i > 3));

            Console.WriteLine((list.RemoveFirstFound(5)) ? "Removed 5" : "Not removed 5");
            Console.WriteLine((list.RemoveFirstFound(5)) ? "Removed 5" : "Not removed 5");
            Console.WriteLine((list.RemoveFirstFound(5)) ? "Removed 5" : "Not removed 5");

            Console.WriteLine("\nAfter remove first:");
            list.RemoveFirst();
            Console.WriteLine(list);

            Console.WriteLine("\nAfter remove last:");
            list.RemoveLast();
            Console.WriteLine(list);

            Console.WriteLine(list.Contains(7) ? "\nExist 7" : "\nNot Exist 7");

            Console.WriteLine("\nAfter remove All 7:");
            list.RemoveAll(7);
            Console.WriteLine(list);

            Console.WriteLine(list.Contains(7) ? "\nExist 7" : "\nNot Exist 7");

            int sum = 0;

            list.ForEach(i => sum += i);
            Console.WriteLine($"\nSum from forEach is: {sum}");

            Console.WriteLine("\nPrint as Array:");
            Console.WriteLine(string.Join("; ", list.ToArray()));

            Console.WriteLine("\nPrint in standart Foreach:");
            foreach (var item in list)
            {
                Console.Write(item.ToString() + " ");
            }
            Console.WriteLine();

            Console.WriteLine("\nDelete first 4 and 3");
            list.RemoveFirstFound(4);
            list.RemoveFirstFound(3);
            Console.WriteLine(list);

            Console.WriteLine("\nAfter Reverse:");
            list.Reverse();
            Console.WriteLine(list);

            Console.WriteLine("\nAfter recreate list by passing Enumerable.Range:");
            list = new DoublyLinkedList <int>(Enumerable.Range(1, 15));
            Console.WriteLine(list);

            Console.WriteLine("\nNew LinkedList <string>:");
            var listStr = new DoublyLinkedList <string>(new string[] { "one", "two", "three", "four", "five", });

            Console.WriteLine(listStr);

            Console.WriteLine("\nPrint as Array:");
            Console.WriteLine(string.Join("; ", listStr.ToArray()));

            Console.WriteLine("\nNew LinkedList <double>:");
            var listD = new DoublyLinkedList <double>(new double[] { 5.63, 6.89, 1.33 });

            Console.WriteLine(listD);

            Console.WriteLine("\nPrint as Array:");
            Console.WriteLine(string.Join("; ", listD.ToArray()));
        }
Ejemplo n.º 24
0
        public static void Main()
        {
            var list = new DoublyLinkedList <int>();

            for (int i = 0; i < 5; i++)
            {
                list.AddFirst(i);
            }
            //Add 5
            list.ForEach(n => Console.Write(n + " "));
            Console.WriteLine();

            list.AddFirst(3);
            list.AddFirst(4);
            //Add 2
            list.ForEach(n => Console.Write(n + " "));
            Console.WriteLine();

            Console.WriteLine("Count = {0}", list.Count);

            for (int i = 0; i < 3; i++)
            {
                list.AddLast(i);
            }
            //Add 3
            list.ForEach(n => Console.Write(n + " "));
            Console.WriteLine();

            list.AddLast(5);
            list.AddLast(10);
            //Add 2
            list.ForEach(n => Console.Write(n + " "));
            Console.WriteLine();

            Console.WriteLine("Count = {0}", list.Count);
            Console.WriteLine(list[0]);

            list.RemoveFirst();
            list.RemoveLast();
            //Remove 2
            Console.WriteLine("Count = {0}", list.Count);

            list.ForEach(n => Console.Write(n + " "));
            Console.WriteLine();

            for (int i = 1; i < 5; i++)
            {
                list.RemoveFirst();
            }
            //Remove 4
            list.ForEach(n => Console.Write(n + " "));
            Console.WriteLine();

            Console.WriteLine("Count = {0}", list.Count);

            for (int i = 1; i < 4; i++)
            {
                list.RemoveLast();
            }
            //Remove 3
            list.ForEach(n => Console.Write(n + " "));
            Console.WriteLine();

            Console.WriteLine("Count = {0}", list.Count);

            int[] array = list.ToArray();

            foreach (var element in list)
            {
                Console.WriteLine(element);
            }

            Console.WriteLine("Count = {0}", list.Count);


            Console.WriteLine(list[-1]);
        }