Find the missing permutation: Difference between revisions
Content added Content deleted
Line 439: | Line 439: | ||
public class FindMissingPermutation { |
public class FindMissingPermutation { |
||
public static void main(String[] args) { |
public static void main(String[] args) { |
||
Utils<Character> u = new Utils<Character>(); |
|||
Joiner joiner = Joiner.on("").skipNulls(); |
Joiner joiner = Joiner.on("").skipNulls(); |
||
ArrayList<Character> c = Lists.newArrayList('A', 'B', 'C', 'D'); |
|||
ImmutableSet<String> s = ImmutableSet.of("ABCD", "CABD", "ACDB", |
ImmutableSet<String> s = ImmutableSet.of("ABCD", "CABD", "ACDB", |
||
"DACB", "BCDA", "ACBD", "ADCB", "CDAB", "DABC", "BCAD", "CADB", |
"DACB", "BCDA", "ACBD", "ADCB", "CDAB", "DABC", "BCAD", "CADB", |
||
"CDBA", "CBAD", "ABDC", "ADBC", "BDCA", "DCBA", "BACD", "BADC", |
"CDBA", "CBAD", "ABDC", "ADBC", "BDCA", "DCBA", "BACD", "BADC", |
||
"BDAC", "CBDA", "DBCA", "DCAB"); |
"BDAC", "CBDA", "DBCA", "DCAB"); |
||
for (ArrayList<Character> cs : |
for (ArrayList<Character> cs : Utils.Permutations(Lists.newArrayList( |
||
'A', 'B', 'C', 'D'))) |
|||
if (!s.contains(joiner.join(cs))) |
if (!s.contains(joiner.join(cs))) |
||
System.out.println(joiner.join(cs)); |
System.out.println(joiner.join(cs)); |
||
} |
} |