3、给出一个函数输出一个字符串的所有排列


  分析:本程序应该考虑到用递归会更快实现一些;

  java实现源程序:

 

package bfgy.lab;
import java.util.Scanner;
public class allArray {
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		String array;
		Scanner sc=new Scanner(System.in);
		array=sc.next();		
		allArray(array.toCharArray(), 0);	
	}
	public static void allArray(char[] r,int i)
	{
		if(i>r.length){
			System.out.println("please enter the string");
		}
		if(i==r.length-1){
			System.out.println(String.valueOf(r));
		}else{
			for(int j=i;j<r.length;j++){
				char temp=r[j];
				r[j]=r[i];
				r[i]=temp;
				allArray(r, i+1);
				
				temp=r[j];
				r[j]=r[i];
				r[i]=temp;
			}
		}		
	}
}