List of utility methods to do List Permutation
final int first = 0; final int last = list.size(); if (first == last) return false; int i = first; ++i; if (i == last) return false; ...