面试算法-63-全排列

题目

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

示例 1:

输入:nums = [1,2,3]
输出:[[1,2,3],[1,3,2],[2,1,3],[2,3,1],[3,1,2],[3,2,1]]

class Solution {
    public List<List<Integer>> permute(int[] nums) {
        List<List<Integer>> result = new ArrayList<>();
        int n = nums.length;
        boolean[] used = new boolean[n];
        LinkedList<Integer> path = new LinkedList<>();
        dfs(nums, 0, used, path, result);
        return result;
    }

    public void dfs(int[] nums, int index, boolean[] used, LinkedList<Integer> path, List<List<Integer>> res) {
        if (index == nums.length) {
            res.add(new LinkedList(path));
            return;
        }
        for (int i = 0; i < nums.length; i++) {
            if (used[i]) {
                continue;
            }
            path.add(nums[i]);
            used[i] = true;
            dfs(nums, index + 1, used, path, res);
            used[i] = false;
            path.removeLast();
        }
    }
}

相关推荐

  1. 面试算法-63-排列

    2024-03-20 13:44:03       18 阅读
  2. 面试算法63:替换单词

    2024-03-20 13:44:03       42 阅读
  3. 算法笔记:排列

    2024-03-20 13:44:03       34 阅读
  4. 回溯算法排列

    2024-03-20 13:44:03       9 阅读
  5. DFS算法 排列问题

    2024-03-20 13:44:03       7 阅读
  6. 54 回溯算法求解排列问题

    2024-03-20 13:44:03       41 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-03-20 13:44:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-03-20 13:44:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-03-20 13:44:03       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-03-20 13:44:03       20 阅读

热门阅读

  1. React.js快速入门教程

    2024-03-20 13:44:03       17 阅读
  2. Twinkle Tray:屏幕亮度管理的得力助手

    2024-03-20 13:44:03       51 阅读
  3. ffmpeg的ffprobe.exe查询修改视频信息

    2024-03-20 13:44:03       19 阅读
  4. Linux的shell脚本

    2024-03-20 13:44:03       18 阅读
  5. GPT-4会让我们更接近真正的AI革命吗?

    2024-03-20 13:44:03       21 阅读
  6. npm audit fix --force

    2024-03-20 13:44:03       19 阅读
  7. 设计模式(行为型设计模式——命令模式)

    2024-03-20 13:44:03       19 阅读
  8. 面试题:linux的常用命令!!!

    2024-03-20 13:44:03       18 阅读
  9. 如何开通点卡核销接口

    2024-03-20 13:44:03       28 阅读
  10. 数据库选型-Mysql和Mongodb对比

    2024-03-20 13:44:03       20 阅读