美文网首页51Nod算法题训练
【算法题】【51nod】1384 全排列

【算法题】【51nod】1384 全排列

作者: Vinko_wei | 来源:发表于2018-08-16 22:49 被阅读0次

题目链接

解题方法:
  • 使用深度优先搜索
代码:
import java.util.*;

public class Main {

    static char[] chs;     //题目的字符串
    static boolean[] vis;  //访问标记
    static char[] ans;     //暂存每一个排列

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String str = scanner.next();
        chs = str.toCharArray();
        ans = new char[chs.length];
        vis = new boolean[chs.length];
        Arrays.sort(chs);  //先排序,方便去重
        dfs(0);
    }

    public static void dfs(int point) {
        if (point == chs.length) {       //一种排列完成,打印它
            String s = "";
            for (int i = 0; i < ans.length; i++) s += ans[i];
            System.out.println(s);
        }
        for (int i = 0; i < chs.length; i++) {
            if (!vis[i]) {               //未被访问
                vis[i] = true;           //标记
                ans[point] = chs[i];     //未访问的数字,赋值给ans[point]
                dfs(point + 1);    //进入下一层,point+1
                vis[i] = false;          //回溯,使用之后,取消访问标记
                while (i < chs.length - 1 && chs[i] == chs[i + 1]) i++;    //去重,相同的跳过
            }
        }
    }
}

相关文章

  • 【算法题】【51nod】1384 全排列

    题目链接 解题方法: 使用深度优先搜索 代码:

  • 算法题--全排列

    0. 链接 题目链接 1. 题目 Given a collection of distinct integers,...

  • 贪心算法 & 动态规划基础题

    [TOC] acm 标签(空格分隔): acm 贪心算法 51Nod 1191消灭兔子 越好,故对兔子血量升序排列...

  • 算法题--全排列II

    0. 链接 题目链接 1. 题目 Given a collection of numbers that might...

  • 46. Permutations

    算法 1: 递归数组 的全排列,等价于全排列与可能的取值组合得到。 算法 2: 计算一个排列 按字典升序排列的紧...

  • leetcode力扣 46 全排列

    借着这个题,复习一下全排列:以下介绍全排列算法四种: (A)字典序法 (B)递增进位制数法 (C)递减进位制数法 ...

  • 全排列与字典序

    全排列 递归实现全排列; 首先来说递归算法实现全排列: 例如,对于{1,2,3,4}的例子进行全排列,其可以分解...

  • 46、全排列 | 算法(leetcode,附思维导图 + 全部解

    零 标题:算法(leetcode,附思维导图 + 全部解法)300题之(46)全排列 一 题目描述 二 解法总览(...

  • 全排列算法

    参考资料 先上代码,实现非常简洁 输出 主要思路 在此树中,每一个从树根到叶子节点的路径,就对应了集合A的一个排列...

  • 全排列算法

    4个数的全排列 结果 任务分配问题

网友评论

    本文标题:【算法题】【51nod】1384 全排列

    本文链接:https://www.haomeiwen.com/subject/bwhabftx.html