private static void Permutations(List<string> vars, processorFunc func) { var dict = new Dictionary<string, bool>(); foreach (string name in vars) dict.Add(name, false); Permutations(0, vars, dict, func); }
private static void Permutations(List <string> vars, processorFunc func) { var dict = new Dictionary <string, bool>(); foreach (string name in vars) { dict.Add(name, false); } Permutations(0, vars, dict, func); }
private static void Permutations(int index, List<string> vars, Dictionary<string, bool> vals, processorFunc func) { for ( int b = 0; b <= 1; b++ ) { vals[vars[index]] = ( b == 1 ); if (index < vars.Count - 1) Permutations(index + 1, vars, vals, func); else func(vals); } }
private static void Permutations(int index, List <string> vars, Dictionary <string, bool> vals, processorFunc func) { for (int b = 0; b <= 1; b++) { vals[vars[index]] = (b == 1); if (index < vars.Count - 1) { Permutations(index + 1, vars, vals, func); } else { func(vals); } } }