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);                   
            }
        }
    }

  • 相关阅读:
    PS
    div 解决高度塌陷
    gradle Error:Cause: unable to find valid certification path to requested target
    HTML
    前端路线图
    css 选择器
    css-day01
    Python图像处理 | 把图像中的白色变成透明
    X-Frame-Options(点击劫持)
    python两张图片显示在一张图上
  • 原文地址:https://www.cnblogs.com/energy1010/p/6867799.html
Copyright © 2011-2022 走看看