examp2_4.java

来自「java 算法设计与分析的好资料.由王晓东先生主编.」· Java 代码 · 共 38 行

JAVA
38
字号
//本程序取自王晓东编著“算法分析与设计”第 21 页,例2.4
//排列问题的递归解法
import java.io.*;
public class Examp2_4
 {
   public static void swap(int []a,int i,int j)
   {
    int temp=a[i];
        a[i]=a[j];
        a[j]=temp;
   }
   public static void perm(int list[],int k,int m)
   {//产生list[k:m]的所有排列
    if(k==m)
     {//单元素序列
       for(int i=0;i<=m;i++)
           System.out.print(list[i]);
       System.out.println();
     }
    else
      //多元素序列,递归产生排列
       for(int i=k;i<=m;i++)
        {
           swap(list,k,i);
           perm(list,k+1,m);
           swap(list,k,i);
        }
   }
   public static void main(String args[])
   {
    int b[]={1,2,3,4,5};
    System.out.println(" 输出全排列");
    perm(b,0,4);
   }
}


⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?