实现全排列

编程语言是Java

public class Permute {

	public static void swap(int a[], int i, int j) {
		int tmp = a[i];
		a[i] = a[j];
		a[j] = tmp;
	}
	
	public static void perm(int[] a, int start, int end) {
		if (start == end) {
			for (int i = 0; i < a.length; i++) {
				System.out.printf("%d,", a[i]);
			}
			System.out.println();
		} else {
			for (int i = start; i <= end; i++) {
				swap(a, i, start);
				perm(a, start+1, end);
				swap(a, i, start);
			}
		}
	}
	
	public static void main(String args[]) {
		int a[] = new int[4];
		a[0] = 6;
		a[1] = 7;
		a[2] = 8;
		a[3] = 9;
		
		perm(a, 0, 3);
	}
}
posted @ 2021-01-13 10:56  ralgo  阅读(63)  评论(0)    收藏  举报