// Construction static InputProvider() { _evenIntegers = CombinatoricsHelper.GenerateNTuples(Numbers, EvenExhaustiveCollectionSize); _oddIntegers = CombinatoricsHelper.GenerateNTuples(Numbers, OddExhaustiveCollectionSize); _randomIntegers = new int[10000000]; Random randGen = new Random(); for (int i = 0; i < _randomIntegers.Count; i++) { _randomIntegers[i] = randGen.Next(); } }
public void CombinatoricsHelper_GenerateNTuples_Test() { var elements = new List <int>(); for (int noOfElements = 0; noOfElements < 5; noOfElements++) { elements.Add(noOfElements); for (int choose = 0; choose < 5; choose++) { var results = CombinatoricsHelper.GenerateNTuples(elements, choose); Assert.AreEqual(results.Count, Math.Pow(elements.Count, choose)); } } }
public void SortHelper_QuickSort_Strings_Test() { // Define the alphabet: string[] alphabet = new string[26]; for (int i = 0; i < alphabet.Length; i++) { alphabet[i] = ('a' + i).ToString(); } // Get every permutation consisting of 3 letters: var permutations = CombinatoricsHelper.GenerateNTuples(alphabet, 4); foreach (var permutation in permutations) { // Sort each permutation: SortHelper.QuickSort(permutation); // Evaluate whether or not the sort was successful. for (int i = 1; i < permutation.Count; i++) { Assert.IsTrue(permutation[i].CompareTo(permutation[i - 1]) >= 0); } } }