Java 代码:
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int arr[]=new int [n];
ArrayList<Integer> list=new ArrayList<Integer>();
for(int i=0;i<n;i++){
list.add(i+1);
}
perm(0,list);
}
public static void perm(int t, ArrayList<Integer> list){
int n=list.size();
if(t==n)//System.out.println(arr);
{
for (int i=0;i<n;i++){
System.out.print(" "+list.get(i));
}
System.out.println();
}
else for (int i=t;i<n;i++){
//swap(arr[t],arr[i]);
int temp;
// temp=arr[t];
// arr[t]=arr[i];
// arr[i]=temp;
temp=list.get(i);
list.remove(i);
list.add(t,temp);
perm(t+1,list);
//swap(arr[t],arr[i]);
// temp=arr[t];
// arr[t]=arr[i];
// arr[i]=temp;
temp=list.get(t);
list.remove(t);
list.add(i,temp);
}
}
}