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

回溯

相关推荐
lang2015092816 分钟前
深入掌握 Maven Settings:从配置到实战
java·maven
scx_link19 分钟前
修改JetBrains产品(IntelliJ IDEA 、PyCharm等软件)的默认插件和日志的存储位置
java·pycharm·intellij-idea
BUG?不,是彩蛋!19 分钟前
Maven-Java 项目到底解决了什么痛点?
java·servlet·maven
小池先生20 分钟前
idea配置代码注释模板
java·ide·intellij-idea
inferno21 分钟前
Maven基础(一)
java·开发语言·maven
摇滚侠25 分钟前
Spring Boot3零基础教程,Reactive-Stream 规范核心接口,笔记103
java·spring boot·笔记
程序猿小蒜1 小时前
基于springboot的校园社团信息管理系统开发与设计
java·前端·spring boot·后端·spring
兔兔爱学习兔兔爱学习1 小时前
Spring Al学习9:模型上下文协议(MCP)
java·学习·spring
m0_748248021 小时前
Spring MVC中@RequestMapping注解的全面解析
java·spring·mvc
Mos_x1 小时前
28.<Spring博客系统⑤(部署的整个过程
java·后端