Ejemplo n.º 1
0
 public void PrintList(LinkedListBase <string> linkedListBase)
 {
     this.Log.AppendLine("\nList Contents:");
     foreach (string value in linkedListBase)
     {
         this.Log.Append(value + ", ");
     }
     this.Log.AppendLine("\n");
 }
Ejemplo n.º 2
0
        private void Swap(int indexKey, int index, LinkedListBase lnkList)
        {                                 //                  2             1
            var temp = lnkList[indexKey]; // 1

            lnkList[indexKey] = lnkList[index];
            var temp2 = lnkList[index];;

            lnkList[index]    = temp;
            lnkList[indexKey] = temp2;
        }
Ejemplo n.º 3
0
        public void LinkedListBaseTests_CleanUp()
        {
            this.TestName = "LinkedListBaseTests_CleanUp()";
            this.Log.AppendLine(this.TestName);

            this.LinkedListBase.Dispose();
            this.LinkedListBase = null;

            this.ValueA = null;
            this.ValueB = null;
            this.ValueC = null;
            this.ValueD = null;
            this.Values = null;
        }
        protected override void Dispose(bool disposing)
        {
            if (!IsDisposed)
            {
                if (disposing)
                {
                    _siblings = null;
                    _previous = null;
                    _next     = null;
                }
            }

            IsDisposed = true;
        }
Ejemplo n.º 5
0
        static void Main(string[] args)
        {
            //Instace class  LinkedListBase and MethodInsertSort
            var lnkList       = new LinkedListBase();
            var mtdInsertSort = new MethodInsertSort();

            //Add element at LinkedList
            #region AddNode
            lnkList.AddNode(18); //1
            lnkList.AddNode(02); //2
            lnkList.AddNode(50); //3
            lnkList.AddNode(36); //4
            lnkList.AddNode(85); //5
            lnkList.AddNode(47); //6
            lnkList.AddNode(21); //7
            lnkList.AddNode(19); //8
            lnkList.AddNode(08); //9
            lnkList.AddNode(01); //10
            lnkList.AddNode(98); //11
            lnkList.AddNode(59); //12
            lnkList.AddNode(15); //13
            lnkList.AddNode(45); //14
            lnkList.AddNode(65); //15
            #endregion
            //lnkList.AddNode(7); //10
            //lnkList.AddNode(3); //11
            //lnkList.AddNode(1); //12
            //lnkList.AddNode(2); //13
            //lnkList.AddNode(4); //14
            //lnkList.AddNode(6); //15



            //Length LinkedList
            var length = lnkList.GetLength();

            //View LinkedList
            lnkList.ViewLinkedList();

            //sorted with InsertSort
            mtdInsertSort.InsertSort(length + 1, lnkList);

            //View LinkedList
            lnkList.ViewLinkedList();

            //Stop aplication
            Console.WriteLine("\n Enter for close..");
            _ = Console.ReadLine();
        }
Ejemplo n.º 6
0
        public void LinkedListBaseTests_Initialize()
        {
            this.TestName = "LinkedListBaseTests_Initialize()";
            this.Log.AppendLine(this.TestName);

            this.Log.AppendLine("Creating 'linkedListBase' with default Constructor");
            LinkedListBase = new LinkedListBase <string>();

            ValueA = "A";
            ValueB = "B";
            ValueC = "C";
            ValueD = "D";

            Values = new string[] { ValueA, ValueB, ValueC, ValueD };
        }
Ejemplo n.º 7
0
        public void InsertSort(int length, LinkedListBase lnkBase)
        {
            for (int outer = 1; outer < length; outer++)
            {
                var key = lnkBase[outer];

                for (int inner = outer; inner > 0; inner--)
                {
                    if (key < lnkBase[inner - 1])
                    {
                        Swap(inner, inner - 1, lnkBase);
                    }
                }
            }
        }
Ejemplo n.º 8
0
        public void LinkedListBase_Reverses_Successfully()
        {
            this.TestName = "LinkedListBase_Reverses_Successfully()";
            this.Log.AppendLine(this.TestName);

            //Arrange
            this.PrintList(this.LinkedListBase);

            //Act
            this.Log.Append("linkedListBase.Reverse()");
            LinkedListBase.Reverse();

            this.PrintList(this.LinkedListBase);

            //Assert
            Assert.AreEqual(4, this.LinkedListBase.Count());
            Assert.AreEqual(this.ValueD, this.LinkedListBase[0]);
        }
Ejemplo n.º 9
0
        public void LinkedListBase_Copies_Successfully()
        {
            this.TestName = "LinkedListBase_Copies_Successfully()";
            this.Log.AppendLine(this.TestName);

            //Arrange
            this.LinkedListBase.AddRange(this.Values);
            this.PrintList(this.LinkedListBase);

            //Act
            LinkedListBase <string> copyOfList = this.LinkedListBase.Copy();

            this.PrintList(copyOfList);

            //Assert
            Assert.AreEqual(this.Values.Length, copyOfList.Count());
            for (int i = 0; i < this.LinkedListBase.Count(); i++)
            {
                Assert.AreEqual(this.LinkedListBase[i], copyOfList[i]);
            }
        }
Ejemplo n.º 10
0
        public void LinkedListBase_Sorts_ByDefaultComparer_Successfully()
        {
            this.TestName = "LinkedListBase_Sorts_ByDefaultComparer_Successfully()";
            this.Log.AppendLine(this.TestName);

            //Arrange
            this.PrintList(this.LinkedListBase);

            //Act
            this.Log.Append("linkedListBase.Sort()");
            LinkedListBase.Sort();

            this.PrintList(this.LinkedListBase);

            //Assert
            Assert.AreEqual(4, this.LinkedListBase.Count());
            for (int i = 0; i < this.Values.Length; i++)
            {
                Assert.AreEqual(this.Values[i], this.LinkedListBase[i]);
            }
        }
        static void Main(string[] args)
        {
            var linkedList = new LinkedListBase();

            //Agregar nodos
            linkedList.AddNode(18); //1
            linkedList.AddNode(02); //2
            //linkedList.AddNode(50); //3
            //linkedList.AddNode(36); //4
            //linkedList.AddNode(85); //5
            //linkedList.AddNode(47); //6
            //linkedList.AddNode(21); //7
            //linkedList.AddNode(19); //8
            //linkedList.AddNode(08); //9
            //linkedList.AddNode(01); //10
            //linkedList.AddNode(98); //11
            //linkedList.AddNode(59); //12
            //linkedList.AddNode(15); //13
            //linkedList.AddNode(45); //14
            //linkedList.AddNode(65); //15

            //Mostrar los nodos.
            linkedList.ViewLinkedList();

            //Obtener tamaño LinkedList
            var length = linkedList.GetLength();

            //Ordenar los nodos
            linkedList.SortBubble(length + 1, linkedList);

            ////Mostrar los nodos ordenados
            linkedList.ViewLinkedList();

            //Permite no cerrar el programa..
            Console.WriteLine("Enter for close.");
            _ = Console.ReadLine();
        }
Ejemplo n.º 12
0
 public LinkedListNodeBase(LinkedListBase <T> siblings = null)
 {
     _previous = null;
     _next     = null;
     _siblings = siblings;
 }