您当前的位置: 首页 >  Java

星拱北辰

暂无认证

  • 0浏览

    0关注

    1205博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

全排列问题(洛谷P1706题题解,Java语言描述)

星拱北辰 发布时间:2020-05-02 15:45:57 ,浏览量:0

题目要求

题目链接

在这里插入图片描述

分析

其实应该用DFS啦,打表还是免了, 9 ! 9! 9!警告。

怎么搜呢?一个boolean数组+一个int数组,int数组按顺序存每一位的数值,boolean数组的index对应实际数值,而true表示已被使用。

一旦搜到的used[i]是true,那就剪枝,确实没有搜的必要了。

AC代码(Java语言描述)
import java.util.Scanner;

public class Main {

    private static StringBuilder result = new StringBuilder();

    private static int num;

    private static int[] sequence;

    private static boolean[] used;

    private static void dfs(int k) {
        if (k == num) {
            for (int j = 1; j             
关注
打赏
1660750074
查看更多评论
0.0466s