• 数字全排列 java深度优先搜索


     1 import java.util.Scanner;
     2 import java.util.ArrayList;
     3 public class Quanpailie{
     4     
     5     public int a[] ;
     6     public int book[] ;
     7     public int n;
     8     public int step=1;
     9     public static void main(String[] args) {
    10         Quanpailie he=new Quanpailie();
    11         he.go();
    12         //深度搜索;
    13     }
    14     public void setup(int step){
    15         for(int i=1;i<=n;i++){
    16             if(step==n+1){
    17                 look(a);
    18                 break;
    19             }else{
    20                 if(book[i]==0){
    21                     a[step]=i;
    22                     book[i]=1;
    23                     setup(step+1);
    24                     book[i]=0;
    25                 }
    26             }
    27         }
    28     }
    29     public void look(int[] list){
    30         System.out.println("");
    31         for(int i=1;i<list.length;i++){
    32             System.out.print(list[i]);
    33         }
    34     }
    35 
    36     public void go(){
    37         Scanner sc=new Scanner(System.in);
    38         n=sc.nextInt();
    39         a=new int[n+1];
    40         book=new int[n+1];
    41         setup(1);
    42     }
    43     
    44 }
  • 相关阅读:
    省选前模拟
    $SA$后缀数组
    一键运行
    多项式$fft$,$ntt$,$fwt$初步
    插头$DP$初步
    网络流初步
    欧拉路相关
    模板—Hash_map
    HZOJ Function
    HZOJ Tree
  • 原文地址:https://www.cnblogs.com/shortail/p/5047071.html
Copyright © 2020-2023  润新知