Esempio n. 1
0
        public void generateBitStrings(int[] bitArr, List <int[]> bitStringsArr, int i)
        {
            if (i == bitArr.Length)
            {
                bitStringsArr.Add(ArrayHelperClass <int> .copy1DArray(bitArr));
            }
            else
            {
                bitArr[i] = 1;
                generateBitStrings(bitArr, bitStringsArr, i + 1);

                bitArr[i] = 0;
                generateBitStrings(bitArr, bitStringsArr, i + 1);
            }
        }
Esempio n. 2
0
        public void permutations(int[] arr, List <int[]> permutationList, int l, int r)
        {
            if (l == r)
            {
                int[] currentPermutation = ArrayHelperClass <int> .copy1DArray(arr);

                permutationList.Add(currentPermutation);
            }
            else
            {
                for (int i = l; i < r; i++)
                {
                    ArrayHelperClass <int> .swapElements(arr, i, l);

                    permutations(arr, permutationList, l + 1, r);
                    ArrayHelperClass <int> .swapElements(arr, i, l);
                }
            }
        }