Пример #1
0
        public void SubsequenceEmpty()
        {
            List <int> numbers = new List <int> {
            };

            List <int> subSequence =
                LongestSubsequence.FindLongestSubsequence(numbers);
        }
        public void FindLongestSubsequence_EmptyList_ShouldReturnEmptyList()
        {
            var list = new List <int>(); // Should return empty list

            var expected = new List <int>();
            var result   = LongestSubsequence.FindLongestSubsequence(list);

            CollectionAssert.AreEqual(expected, result);
        }
        public void FindingSubsequenceShouldWorkWithNegativeNumbers()
        {
            var testList = new List <float> {
                1, 2, 4, 4, 4, 2, -0.5f, -0.5f, -0.5f, -0.5f
            };

            var result = LongestSubsequence.FindLongestSubsequence(testList);

            CollectionAssert.AreEqual(new List <float> {
                -0.5f, -0.5f, -0.5f, -0.5f
            }, result);
        }
        public void FindingSubsequenceInTheMiddleOfTheListShouldWork()
        {
            var testList = new List <decimal> {
                1, 2, 4, 4, 4, 4, 4, 4, 2, 0.5m, 0.5m, 0.5m, 0.5m
            };

            var result = LongestSubsequence.FindLongestSubsequence(testList);

            CollectionAssert.AreEqual(new List <decimal> {
                4, 4, 4, 4, 4, 4
            }, result);
        }
        public void FindingSubsequenceInTheEndOfTheListShouldWork()
        {
            var testList = new List <double> {
                1, 2, 2, 0.5, 0.5, 0.5, 0.5
            };

            var result = LongestSubsequence.FindLongestSubsequence(testList);

            CollectionAssert.AreEqual(new List <double> {
                0.5, 0.5, 0.5, 0.5
            }, result);
        }
        public void FindingSubsequenceInTheBeginningOfTheListShouldWork()
        {
            var testList = new List <int> {
                1, 1, 1, 1, 1, 2, 2, 2, 0, 0, 0, 0
            };

            var result = LongestSubsequence.FindLongestSubsequence(testList);

            CollectionAssert.AreEqual(new List <int> {
                1, 1, 1, 1, 1
            }, result);
        }
Пример #7
0
        public void TestFindLongestSubsequence()
        {
            List <int> numbers = new List <int> {
                9, 5, -3, 6, -8, 5, -5, 21, 5, 6, -5, 8, -6
            };
            //List<int> expectedList = new List<int>{ 5, 5, 5 };
            List <int> tested = LongestSubsequence.FindLongestSubsequence(numbers);

            Assert.IsTrue(tested.Count == 3);
            for (int i = 0; i < tested.Count; i++)
            {
                Assert.AreEqual(5, tested[i]);
            }
        }
        public void FindLongestSubsequence_1Element_ShouldReturnCorrectly()
        {
            var list = new List <int>()
            {
                1
            };                                // Should return 1

            var expected = new List <int>()
            {
                1
            };
            var result = LongestSubsequence.FindLongestSubsequence(list);

            CollectionAssert.AreEqual(expected, result);
        }
        public void FindLongestSubsequence_MoreThanOneLongest_ShouldFindLeftmost()
        {
            var list = new List <int>()
            {
                69, 69, 1, 1, 2, 2, 3, 3
            };                                                       // Should return 2 x 69

            var expected = new List <int>()
            {
                69, 69
            };
            var result = LongestSubsequence.FindLongestSubsequence(list);

            CollectionAssert.AreEqual(expected, result);
        }
        public void FindLongestSubsequence_SequenceAtTheEnd_ShouldFindCorrectly()
        {
            var list = new List <int>()
            {
                504, 504, 2, 2, 3, 3, 3, 3, 78, 78, 78, 78, 78, 78, 78, 104, 1004, 2, 2, 2, 2, 2, 2, 2, 2
            };                                                                                                                        // Should return 8 x 2

            var expected = new List <int>()
            {
                2, 2, 2, 2, 2, 2, 2, 2
            };
            var result = LongestSubsequence.FindLongestSubsequence(list);

            CollectionAssert.AreEqual(expected, result);
        }
        public void FindLongestSubsequence_SequenceInTheMIddle_ShouldFindCorrectly()
        {
            var list = new List <int>()
            {
                1, 1, 1, 5, 5, 69, 69, 2, 504, 504, 2, 2, 3, 3, 3, 3, 78, 78, 78, 78, 78, 78, 78, 104, 1004
            };                                                                                                                          // Should return 7 x 78

            var expected = new List <int>()
            {
                78, 78, 78, 78, 78, 78, 78
            };
            var result = LongestSubsequence.FindLongestSubsequence(list);

            CollectionAssert.AreEqual(expected, result);
        }
Пример #12
0
        public void SubsequenceCount1()
        {
            List <int> numbers = new List <int> {
                4
            };

            List <int> subSequence =
                LongestSubsequence.FindLongestSubsequence(numbers);

            foreach (var number in subSequence)
            {
                Assert.AreEqual(4, number);
            }

            Assert.AreEqual(1, subSequence.Count);
        }
Пример #13
0
 public static void Main(string[] args)
 {
     SumAndAverage.CalculateSumAndAverage();
     StackReverse.Reverse();
     SortList.Sort();
     LongestSubsequence.FindLongestSubsequence();
     NegativeRemoval.Remove();
     OddOccurenceRemoval.Remove();
     OccurenceCounter.Count();
     Majorant.FindMajorant();
     SequenceMemberFinder.Find();
     ShortestSequenceOfOperations.Find();
     Client.Print();
     ClientAdtClient.Operate();
     ClientAdtQueue.Operate();
 }
Пример #14
0
        public void SubsequenceInEnd()
        {
            List <int> numbers = new List <int>
            {
                4, 2, 2, 5, 2, 3, 2, 5, 5, 5, 5
            };

            List <int> subSequence =
                LongestSubsequence.FindLongestSubsequence(numbers);

            foreach (var number in subSequence)
            {
                Assert.AreEqual(5, number);
            }

            Assert.AreEqual(4, subSequence.Count);
        }
Пример #15
0
        public void SubsequenceInMiddleNegative()
        {
            List <int> numbers = new List <int>
            {
                4, 2, 2, -5, 1, -3, -3, -3, 1, 5, 2
            };

            List <int> subSequence =
                LongestSubsequence.FindLongestSubsequence(numbers);

            foreach (var number in subSequence)
            {
                Assert.AreEqual(-3, number);
            }

            Assert.AreEqual(3, subSequence.Count);
        }
Пример #16
0
        public void SubsequenceInBeginning()
        {
            List <int> numbers = new List <int>
            {
                2, 2, 2, 2, 3, 2, 3, 1, 5, 2
            };

            List <int> subSequence =
                LongestSubsequence.FindLongestSubsequence(numbers);

            foreach (var number in subSequence)
            {
                Assert.AreEqual(2, number);
            }

            Assert.AreEqual(4, subSequence.Count);
        }