leetcode46:全排列

全排列

给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。

java 复制代码
List<List<Integer>> list = new ArrayList<>();

    public List<List<Integer>> permute(int[] nums) {
        LinkedList<Integer> res = new LinkedList<>();
        for (int i = 0; i < nums.length; i++) {
            res.add(nums[i]);
        }
        backTrack(nums,0,res);
        return list;
    }

    void backTrack(int nums[], int start, LinkedList<Integer> res){
        if(start == nums.length){
            list.add(new ArrayList<>(res));
            return;
        }
        for (int i = start; i < nums.length; i++) {
            swap(res,start,i);
            backTrack(nums,start+1,res);
            swap(res,start,i);
        }
    }

    private void swap(LinkedList<Integer> res, int start, int i) {
        int a = res.get(start);
        res.set(start,res.get(i));
        res.set(i,a);
    }

回溯

相关推荐
stormsha17 分钟前
maven 编译构建可以执行的jar包
java·maven·jar
愿尽19 分钟前
JavaWeb【day14】--(SpingBoot原理)
java·spring boot·后端
kingandlog35 分钟前
Redis网络模型、通信协议、内存回收
java·网络·redis
丘丘用户思思澪40 分钟前
maven手动安装jar包到本地仓库时遇到there is no POM in this directory
java·maven·jar
lareina_yy43 分钟前
Android Studio新建工程(Java语言环境)
android·java·android studio
51码上有猿1 小时前
基于springboot的在线租房系统设计与实现
java
惜.己1 小时前
基于Spring搭建SpringMvc框架
java·开发语言·后端·spring·tomcat·mvc·idea
箬敏伊儿1 小时前
springboot项目中 前端浏览器访问时遇到跨域请求问题CORS怎么解决?has been blocked by CORS policy
java·前端·spring boot·后端·spring
Dylanioucn1 小时前
【编程底层思考】什么是GC Roots
java·jvm
_晓夏_1 小时前
【JVM 工具命令】JAVA程序线上问题诊断,JVM工具命令的使用,jstat, jstack,jmap命令的使用
java·开发语言·jvm·jvm命令工具·java程序线上问题定位命令·java程序问题故障排查命令·jvm线上问题故障排查