public List<List<Integer>> permuteII(int[] nums) {
        List<List<Integer>> res = new ArrayList<List<Integer>>();
        List<Integer> candidate = new ArrayList<Integer>();
        for (int i : nums)
            candidate.add(i);
        standard(candidate, 0, res);
        return res;
    }