zoukankan      html  css  js  c++  java
  • 排列组合算法

    public class Solution{
        public List<List<Integer>> permutations(int[] arr){
            List<List<Integer>> res = new ArrayList<List<Integer>>();
            //corner
            if ( arr == null || arr.length == 0 ){
                return res;
            }

            //core
            List<Integer> curList = new ArrayList<>();

            helper(res, curList, arr);

            return res;
        }


        public void helper(List<List<Integer>> res, List<Integer> curList, int[] arr){
            //base
            if ( curList.size() == arr.length ){
                res.add(new ArrayList<Integer>(curList));           
                return ;
            }

            //current
            for ( int i = 0; i < arr.length; i++ ){
                if ( curList.contains(arr[i]) ){
                    continue;
                }

                curList.add(arr[i]);

                //next
                helper(res, curList, arr);

                curList.remove(curList.size() - 1);                   
            }
        }
    }

  • 相关阅读:
    Idea14 生成webservices
    第10组 Beta冲刺(4/4)
    2019 SDN上机第7次作业
    第10组 Beta冲刺(3/4)
    第10组 Beta冲刺(2/4)
    第10组 Beta冲刺(1/4)
    2019 SDN上机第6次作业
    SDN课程阅读作业(2)
    2019 SDN上机第5次作业
    第10组 Alpha冲刺(4/4)
  • 原文地址:https://www.cnblogs.com/energy1010/p/6867799.html
Copyright © 2011-2022 走看看