从n个数中选出m个数,共有多少中排列

从n个数中选出m个数,共有多少中排列,

例如5个数选出5个数的排列 5x4x3x2x1=120种,下面代码知识一种写法,可以自己改编

import java.util.ArrayList;
import java.util.List;

public class Main {

	static int count = 0;
	private static void f1(List lis,int start) {
		// TODO Auto-generated method stub
		if(start>= lis.size()){
			count++;
			System.out.println(lis);
			return;
		}

		for(int i = 1; i <= 9;i++){
			if(!lis.contains(i)){
				lis.set(start, i);
			}else continue;

			f1(lis,start+1);
			lis.set(start, -1);		
			
		}
		
	}
	
	public static void main(String[] args) {
		
		int n =5;
		List lis = new ArrayList();
		for(int i = 0; i < n;i++){
			lis.add(-1);
		}
		
		f1(lis,0);
		System.out.println(count);
		
	}
	
}

你可能感兴趣的:(蓝桥杯,面试算法必备)