几个问题
网站首页 文章专栏 几个问题
几个问题
编辑时间:2019-05-24 18:59 作者:毛毛小妖 浏览量:56 评论数:2

1、定义一个hash表

2、找出100以内的素数(素数是指除了1和他本身没有别的因子了)

public static void printSushu(int n){
	for(int i=2;i<n;i++){
		int count =0;
		for(int j=2;j<=i;j++){
			if(i%j==0){
				count ++;
			}
		}
		if(count==1){
			count = 0;
			System.out.print(i+" ");
		}
	}
}

3、计算整数转为二进制之后1的个数

public class Ten2Two {
	private static String str = "";
	public static void convert(int x){
		int a = x/2;
		int b = x%2;
		str += b+" ";
		if(a!=0){
			convert(a);
		}
	}
	
	public static void main(String[] args) {
		convert(15);
		System.out.println(str);
		int count = 0;
		String[] arr = str.split(" ");
		for(int i=0;i<arr.length;i++){
			if("1".equals(arr[i])){
				count++;
			}
		}
		System.out.println(count);
	}
}

4、快速排序算法

public static void quickSort(int[] a,int left,int right){
	int i,j,temp,t;
	if(left > right)
		return;
	temp = a[left];
	i=left;
	j=right;
	while(i!=j){
		while(a[j]>=temp && i<j){
			j--;
		}
		while(a[i]<=temp && i<j){
			i++;
		}
		if(i<j){
			t=a[i];
			a[i]=a[j];
			a[j]=t;
		}
	}
	a[left]=a[i];
	a[i]=temp;
	quickSort(a,left,i-1);
	quickSort(a,i+1,right);
}

5、小明爬台阶,一次只能爬1个、2个或3个。问爬完20个台阶总共有几种方法?

public static int stairs(int n){
	if(n==0){
		return 1;
	}else if(n==1 || n==2){
		return n;
	}else{
		return stairs(n-1)+stairs(n-2)+stairs(n-3);
	}
}

 

推荐文章
来说两句吧
最新评论
  • 本王非王
    本王非王
    我喜欢那个排序

    shengyu
    毛毛小妖: @本王非王 其他的为什么不喜欢[左哼哼]

    2019-05-23 14:16 回复

  • 上一页 1 下一页