Permutation of array

后端 未结 11 1223
我寻月下人不归
我寻月下人不归 2020-11-22 07:56

For example I have this array:

int a[] = new int[]{3,4,6,2,1};

I need list of all permutations such that if one is like this, {3,2,1

11条回答
  •  傲寒
    傲寒 (楼主)
    2020-11-22 08:12

    Do like this...

    import java.util.ArrayList;
    import java.util.Arrays;
    
    public class rohit {
    
        public static void main(String[] args) {
            ArrayList a=new ArrayList();
            ArrayList b=new ArrayList();
            b.add(1);
            b.add(2);
            b.add(3);
            permu(a,b);
        }
    
        public static void permu(ArrayList prefix,ArrayList value) {
            if(value.size()==0) {
                System.out.println(prefix);
            } else {
                for(int i=0;i a=new ArrayList();
                    a.addAll(prefix);
                    a.add(value.get(i));
    
                    ArrayList b=new ArrayList();
    
                    b.addAll(value.subList(0, i));
                    b.addAll(value.subList(i+1, value.size()));
    
                    permu(a,b);
                }
            }
        }
    
    }
    

提交回复
热议问题