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

回溯

相关推荐
不会c+22 分钟前
02-SpringBoot配置文件
java·spring boot·后端
AI 大模型学习不踩坑25 分钟前
OpenClaw 完整教程:从安装到使用(官方脚本版)
java·人工智能·神经网络·机器学习·计算机视觉·自然语言处理·openclaw
Listen·Rain1 小时前
数据库流式查询
java·数据库
彦为君1 小时前
算法思维与经典智力题
java·前端·redis·算法
翔云 OCR API1 小时前
慧视扫描王-财务少加班
java·自动化
雨辰AI2 小时前
生产级实战:人大金仓 V9 标准化运维手册(日常巡检 + 监控告警 + 应急处置)
java·运维·数据库·后端
我是一颗柠檬2 小时前
【Java项目技术亮点】覆盖索引与索引下推优化
android·java·开发语言
云道轩2 小时前
比较IBM Transformation Advisor 和WebSphere Application Server Migration Toolkit
java·jakarta ee·open liberty·应用迁移
2601_962440842 小时前
计算机毕业设计之健身房管理系统的设计与实现
java·开发语言·课程设计·旅游·宠物
TeamDev2 小时前
JxBrowser 9.3.0 版本发布啦!
java·后端·c#·混合应用·jxbrowser·浏览器控件·异步媒体设备