Exemplo n.º 1
0
        static void Main(string[] args)
        {
            //Usage sample
            LinkedList<int> list = new LinkedList<int>();

            //ADDING OPERATIONS
            list.add(1);
            list.add(2);
            list.add(3);
            list.add(3);
            list.add(4);
            list.add(5);
            list.add(6);
            list.add(6);
            list.add(6);
            list.add(6);

            list.add(1, 1); // adding by index
            Console.WriteLine(list.ToString());

            //REMOVE
            list.remove(1);
            list.remove(2);
            list.removeByIndex(4); //removing by index
            list.removeAllValues(6); //removing all '6' in the linkedlist
            Console.WriteLine(list.ToString());

            //INDEXOF
            Console.WriteLine("El 3 se encuentra en la posición {0}", list.indexOf(3));
            int[] indexes = list.allIndexesOf(3);
            String positions = "[ ";
            for (int i = 0; i < indexes.Length; i++)
            {
                if (i != indexes.Length - 1)
                    positions += indexes[i] + ", ";
                else
                    positions += indexes[i] + " ]";
            }
            Console.WriteLine("Estas son todas las posiciones en las que hay un 3: {0}", positions);

            //SIZE
            Console.WriteLine("El tamaño de la lista actualmente es: {0}", list.size());

            //GET/SET
            Console.WriteLine("El primer elemento de la lista es el: {0}", list.get(0));
            list.set(0, 10);
            Console.WriteLine("Ahora el primer elemento a cambiado (tras usar el setter)");
            Console.WriteLine("El primer elemento de la lista es el: {0}", list.get(0));

            /// ...
            ///

            // TESTING FOREACH
            Console.WriteLine("Estado actual de la lista: {0}" , list);
            list.ForEach(x => Console.WriteLine(x));

            //TESTING FOREACHODD
            Console.WriteLine("Imprime solo los primos:");
            list.ForEachOdd(x => Console.WriteLine(x));
        }
 public void testAllIndexesOf()
 {
     list = new LinkedList<int>();
     for (int i = 0; i < 10; i++)
     {
         list.add(1);
     }
     int[] expected = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
     Assert.AreEqual(expected.Length, list.size());
     CollectionAssert.AreEqual(expected, list.allIndexesOf(1));
 }