Пример #1
0
        public void TestVowelList()
        {
            SLinkedList <string> vowels = new SLinkedList <string>();

            vowels.Append("a");
            vowels.Append("e");
            vowels.Append("i");
            vowels.Append("o");
            vowels.Append("u");

            SNode <string> head = vowels.Head;

            var it = vowels.GetIterator();

            Assert.AreEqual("a", it.GetData()); it.MoveNext();
            Assert.AreEqual("e", it.GetData()); it.MoveNext();
            Assert.AreEqual("i", it.GetData()); it.MoveNext();
            Assert.AreEqual("o", it.GetData()); it.MoveNext();
            Assert.AreEqual("u", it.GetData()); it.MoveNext();

            //foreach (var vowel in vowels)
            //{
            //    Console.WriteLine(vowel);
            //}
        }
Пример #2
0
        public static void DoTest()
        {
            SLinkedList <int> listOfNumbers1 = new SLinkedList <int>();

            listOfNumbers1.Append(10);
            listOfNumbers1.Append(124);
            listOfNumbers1.Prepend(654);
            listOfNumbers1.Prepend(8);
            listOfNumbers1.Append(127485693);
            listOfNumbers1.Append(34);
            listOfNumbers1.Append(824);

            listOfNumbers1.RemoveAt(0);
            listOfNumbers1.RemoveAt(3);
            listOfNumbers1.RemoveAt(4);
            listOfNumbers1.RemoveAt(2);
            listOfNumbers1.RemoveAt(2);
            listOfNumbers1.RemoveAt(0);

            listOfNumbers1.Prepend(3);
            listOfNumbers1.Prepend(2);
            listOfNumbers1.Prepend(1);

            listOfNumbers1.InsertAt(444, listOfNumbers1.Count);
            listOfNumbers1.InsertAt(555, listOfNumbers1.Count);
            listOfNumbers1.InsertAt(222, 2);

            var arrayVersion = listOfNumbers1.ToArray();

            Assert.True(arrayVersion.Length == listOfNumbers1.Count);

            /*******************************************************/

            var listOfNumbers2 = new SLinkedList <int>();

            listOfNumbers2.Append(23);
            listOfNumbers2.Append(42);
            listOfNumbers2.Append(4);
            listOfNumbers2.Append(16);
            listOfNumbers2.Append(8);
            listOfNumbers2.Append(15);
            listOfNumbers2.Append(9);
            listOfNumbers2.Append(55);
            listOfNumbers2.Append(0);
            listOfNumbers2.Append(34);
            listOfNumbers2.Append(12);
            listOfNumbers2.Append(2);

            listOfNumbers2.SelectionSort();
            var intArray = listOfNumbers2.ToArray();

            foreach (var item in listOfNumbers2)
            {
                Console.WriteLine(item);
            }

            Assert.True(intArray[0] == 0 && intArray[intArray.Length - 1] == 55, "Wrong sorting");
        }
        public static void DoTest()
        {
            int index = 0;
            SLinkedList <int> listOfNumbers1 = new SLinkedList <int>();

            listOfNumbers1.Append(10);
            listOfNumbers1.Append(124);
            listOfNumbers1.Prepend(654);
            listOfNumbers1.Prepend(8);
            listOfNumbers1.Append(127485693);
            listOfNumbers1.Append(34);
            listOfNumbers1.Append(823);

            listOfNumbers1.RemoveAt(0);
            listOfNumbers1.RemoveAt(3);
            listOfNumbers1.RemoveAt(4);
            listOfNumbers1.RemoveAt(2);
            listOfNumbers1.RemoveAt(2);
            listOfNumbers1.RemoveAt(0);

            listOfNumbers1.Prepend(3);
            listOfNumbers1.Prepend(2);
            listOfNumbers1.Prepend(1);

            // Print List and Count

            listOfNumbers1.InsertAt(444, listOfNumbers1.Count);
            listOfNumbers1.InsertAt(555, listOfNumbers1.Count);
            listOfNumbers1.InsertAt(222, 2);

            index = (listOfNumbers1.Count - 1);

            var arrayVersion = listOfNumbers1.ToArray();

            Assert.True(arrayVersion.Length == listOfNumbers1.Count);

            /************************************************************************************/

            var listOfNumbers2 = new SLinkedList <int>();

            listOfNumbers2.Append(23);
            listOfNumbers2.Append(42);
            listOfNumbers2.Append(4);
            listOfNumbers2.Append(16);
            listOfNumbers2.Append(8);
            listOfNumbers2.Append(15);
            listOfNumbers2.Append(9);
            listOfNumbers2.Append(55);
            listOfNumbers2.Append(0);
            listOfNumbers2.Append(34);
            listOfNumbers2.Append(12);
            listOfNumbers2.Append(2);

            listOfNumbers2.SelectionSort();
            var intArray = listOfNumbers2.ToArray();

            Assert.True(intArray[0] == 0 && intArray[intArray.Length - 1] == 55, "Wrong sorting!");
        }
Пример #4
0
        public static void Main(string[] args)
        {
            var db   = new Builder();
            var tags = new SLinkedList <string>();

            tags.Append("Duro");
            tags.Append("Matar");

            db.AddMovie(new Common.Movie
            {
                Category = "Action",
                Name     = "Duro de matar",
                Tags     = tags
            });
            var tags2 = new SLinkedList <string>();

            tags2.Append("Agentes");
            tags2.Append("Matar");

            db.AddMovie(new Common.Movie
            {
                Category = "Action",
                Name     = "007",
                Tags     = tags2
            });
            var tags3 = new SLinkedList <string>();

            tags3.Append("Agentes");
            tags3.Append("Matar");

            db.AddMovie(new Common.Movie
            {
                Category = "Action",
                Name     = "Mision Imposible",
                Tags     = tags3
            });

            db.Recomendacion("Action", "007", 1);



            //db.SaveDB();

            //db.GetDB();
        }
Пример #5
0
        public void TestAppendFour()
        {
            //Arrange
            Node        node1 = new Node(7);
            Node        node2 = new Node(2);
            Node        node3 = new Node(4);
            SLinkedList list  = new SLinkedList(node1);

            list.Insert(node2.Data);
            list.Append(node3.Data);
            //Act
            bool check = list.Includes(4);

            //Assert
            Assert.True(check);
        }
Пример #6
0
        public void CanInsertNineAfterSeven()
        {
            //Arrange
            Node        node1 = new Node(7);
            Node        node2 = new Node(2);
            Node        node3 = new Node(4);
            Node        node4 = new Node(9);
            SLinkedList list  = new SLinkedList(node1);

            list.Insert(node2.Data);
            list.Append(node3.Data);
            list.InsertBefore(node4, node1);
            //Act
            bool check = list.Includes(9);

            //Assert
            Assert.True(check);
        }
Пример #7
0
        public void WhereKIsNegative()
        {
            //Arrange
            Node node3 = new Node(4);
            Node node5 = new Node(3);
            Node node1 = new Node(7);
            Node node4 = new Node(9);
            Node node2 = new Node(2);

            SLinkedList list = new SLinkedList(node1);

            list.Insert(node2.Data);
            list.Append(node3.Data);
            list.InsertBefore(node4, node1);
            list.InsertAfter(node5, node1);
            //Act
            int check = list.ValueAtIndex(-1);

            //Assert
            Assert.Equal(-1, check);
        }
Пример #8
0
        public void RequestedIndexOutsideLimit()
        {
            //Arrange
            Node node3 = new Node(4);
            Node node5 = new Node(3);
            Node node1 = new Node(7);
            Node node4 = new Node(9);
            Node node2 = new Node(2);

            SLinkedList list = new SLinkedList(node1);

            list.Insert(node2.Data);
            list.Append(node3.Data);
            list.InsertBefore(node4, node1);
            list.InsertAfter(node5, node1);
            //Act
            int check = list.ValueAtIndex(6);

            //Assert
            Assert.Equal(-1, check);
        }
Пример #9
0
 /// <summary>
 /// 添加数据节点
 /// </summary>
 /// <typeparam name="T">数据节点类型</typeparam>
 public void AddNode(IEventTopic t_Node)
 {
     m_SLinkedList.Append(t_Node);
 }
 /// <summary>
 /// 添加数据节点
 /// </summary>
 /// <typeparam name="T">数据节点类型</typeparam>
 public void AddNode(BaseModule t_Node)
 {
     m_SLinkedList.Append(t_Node);
 }
Пример #11
0
        public void TestRemoveTailSingleElement()
        {
            linklist.Clear();

            linklist.Append(10);
            linklist.RemoveTail();

            Assert.AreEqual(null, linklist.Head);
            Assert.AreEqual(null, linklist.Tail);
            Assert.AreEqual(0, linklist.Count);
        }
Пример #12
0
 /// <summary>
 /// 添加数据节点
 /// </summary>
 /// <typeparam name="T">数据节点类型</typeparam>
 public void AddNode(FSM t_Node)
 {
     m_SLinkedList.Append(t_Node);
 }
		public static void DoTest ()
		{
			int index = 0;
			SLinkedList<int> listOfNumbers1 = new SLinkedList<int>();

			listOfNumbers1.Append(10);
			listOfNumbers1.Append(124);
			listOfNumbers1.Prepend(654);
			listOfNumbers1.Prepend(8);
			listOfNumbers1.Append(127485693);
			listOfNumbers1.Append(34);
			listOfNumbers1.Append(823);

			Console.WriteLine(listOfNumbers1.ToReadable());

			listOfNumbers1.RemoveAt(0);
			Console.WriteLine("Removed 1st:\r\n" + listOfNumbers1.ToReadable());

			listOfNumbers1.RemoveAt(3);
			listOfNumbers1.RemoveAt(4);
			Console.WriteLine("Removed 3rd & 4th:\r\n" + listOfNumbers1.ToReadable());

			listOfNumbers1.RemoveAt(2);
			Console.WriteLine("Removed 3rd:\r\n" + listOfNumbers1.ToReadable());

			listOfNumbers1.RemoveAt(2);

			Console.WriteLine("Removed 3rd:\r\n" + listOfNumbers1.ToReadable());

			listOfNumbers1.RemoveAt(0);
			Console.WriteLine("Remove 1st:\r\n" + listOfNumbers1.ToReadable());

			listOfNumbers1.Prepend(3);
			listOfNumbers1.Prepend(2);
			listOfNumbers1.Prepend(1);
			// Print List and Count
			Console.WriteLine(listOfNumbers1.ToReadable());
			Console.WriteLine("Count: " + listOfNumbers1.Count + "\r\n");

			listOfNumbers1.InsertAt(444, listOfNumbers1.Count);
			listOfNumbers1.InsertAt(555, listOfNumbers1.Count);
			listOfNumbers1.InsertAt(222, 2);
			Console.WriteLine(listOfNumbers1.ToReadable());
			Console.WriteLine("Count: " + listOfNumbers1.Count + "\r\n");

			index = 0;
			Console.WriteLine("Get At " + index + ": " + listOfNumbers1.GetAt(index));

			index = (listOfNumbers1.Count / 2) + 1;
			Console.WriteLine("Get At " + index + ": " + listOfNumbers1.GetAt(index));

			index = (listOfNumbers1.Count / 2) + 2;
			Console.WriteLine("Get At " + index + ": " + listOfNumbers1.GetAt(index));

			index = (listOfNumbers1.Count - 1);
			Console.WriteLine("Get At " + index + ": " + listOfNumbers1.GetAt(index));

			Console.WriteLine();

			Console.WriteLine("GetRange(0, 3):\r\n" + listOfNumbers1.GetRange(0, 3).ToReadable());

			var arrayVersion = listOfNumbers1.ToArray();
			Debug.Assert (arrayVersion.Length == listOfNumbers1.Count);

            /************************************************************************************/

            var listOfNumbers2 = new SLinkedList<int>();

            listOfNumbers2.Append(23);
            listOfNumbers2.Append(42);
            listOfNumbers2.Append(4);
            listOfNumbers2.Append(16);
            listOfNumbers2.Append(8);
            listOfNumbers2.Append(15);
            listOfNumbers2.Append(9);
            listOfNumbers2.Append(55);
            listOfNumbers2.Append(0);
            listOfNumbers2.Append(34);
            listOfNumbers2.Append(12);
            listOfNumbers2.Append(2);

            listOfNumbers2.SelectionSort();

            var intArray = listOfNumbers2.ToArray();

            Debug.Assert(intArray[0] == 0 && intArray[intArray.Length - 1] == 55, "Wrong sorting!");
		}
Пример #14
0
 /// <summary>
 /// 添加数据节点
 /// </summary>
 /// <typeparam name="T">数据节点类型</typeparam>
 public void AddNode(IComponent t_Node)
 {
     m_SLinkedList.Append(t_Node);
 }
        public static void DoTest()
        {
            int index = 0;
            SLinkedList <int> listOfNumbers1 = new SLinkedList <int>();

            listOfNumbers1.Append(10);
            listOfNumbers1.Append(124);
            listOfNumbers1.Prepend(654);
            listOfNumbers1.Prepend(8);
            listOfNumbers1.Append(127485693);
            listOfNumbers1.Append(34);
            listOfNumbers1.Append(823);

            Console.WriteLine(listOfNumbers1.ToReadable());

            listOfNumbers1.RemoveAt(0);
            Console.WriteLine("Removed 1st:\r\n" + listOfNumbers1.ToReadable());

            listOfNumbers1.RemoveAt(3);
            listOfNumbers1.RemoveAt(4);
            Console.WriteLine("Removed 3rd & 4th:\r\n" + listOfNumbers1.ToReadable());

            listOfNumbers1.RemoveAt(2);
            Console.WriteLine("Removed 3rd:\r\n" + listOfNumbers1.ToReadable());

            listOfNumbers1.RemoveAt(2);

            Console.WriteLine("Removed 3rd:\r\n" + listOfNumbers1.ToReadable());

            listOfNumbers1.RemoveAt(0);
            Console.WriteLine("Remove 1st:\r\n" + listOfNumbers1.ToReadable());

            listOfNumbers1.Prepend(3);
            listOfNumbers1.Prepend(2);
            listOfNumbers1.Prepend(1);
            // Print List and Count
            Console.WriteLine(listOfNumbers1.ToReadable());
            Console.WriteLine("Count: " + listOfNumbers1.Count + "\r\n");

            listOfNumbers1.InsertAt(444, listOfNumbers1.Count);
            listOfNumbers1.InsertAt(555, listOfNumbers1.Count);
            listOfNumbers1.InsertAt(222, 2);
            Console.WriteLine(listOfNumbers1.ToReadable());
            Console.WriteLine("Count: " + listOfNumbers1.Count + "\r\n");

            index = 0;
            Console.WriteLine("Get At " + index + ": " + listOfNumbers1.GetAt(index));

            index = (listOfNumbers1.Count / 2) + 1;
            Console.WriteLine("Get At " + index + ": " + listOfNumbers1.GetAt(index));

            index = (listOfNumbers1.Count / 2) + 2;
            Console.WriteLine("Get At " + index + ": " + listOfNumbers1.GetAt(index));

            index = (listOfNumbers1.Count - 1);
            Console.WriteLine("Get At " + index + ": " + listOfNumbers1.GetAt(index));

            Console.WriteLine();

            Console.WriteLine("GetRange(0, 3):\r\n" + listOfNumbers1.GetRange(0, 3).ToReadable());

            var arrayVersion = listOfNumbers1.ToArray();

            Debug.Assert(arrayVersion.Length == listOfNumbers1.Count);

            /************************************************************************************/

            var listOfNumbers2 = new SLinkedList <int>();

            listOfNumbers2.Append(23);
            listOfNumbers2.Append(42);
            listOfNumbers2.Append(4);
            listOfNumbers2.Append(16);
            listOfNumbers2.Append(8);
            listOfNumbers2.Append(15);
            listOfNumbers2.Append(9);
            listOfNumbers2.Append(55);
            listOfNumbers2.Append(0);
            listOfNumbers2.Append(34);
            listOfNumbers2.Append(12);
            listOfNumbers2.Append(2);

            listOfNumbers2.SelectionSort();

            var intArray = listOfNumbers2.ToArray();

            Debug.Assert(intArray[0] == 0 && intArray[intArray.Length - 1] == 55, "Wrong sorting!");
        }