一些Java经典算法

1.留言板分页问题
 有x条留言,每页显示n条留言,共m页。
 m=(x+n-1)/n
2.走马灯问题
 让x的值总在0到9之间循环变化。
 int x=0;
 while(true)
 {
  x=(x+1)%10;
 }
3.时间复杂度最小的素数查找方法
public static void main(String[] args)
{
 int n=50;//素数查找上限,即素数查找范围是2到50,左闭右开
 int count=0;//素数个数
 int[]num=new int[n];//素数的集合
 double sqrt;//某数的平方根
 for(int i=2;i<n;i++)
 {
  System.out.println("正在检查"+i+",素数已有"+count+"个");
  num[count++]=i;//不管是不是素数,先放进素数集合,素数个数加1
  sqrt=Math.sqrt(i);//得到它的平方根
  for(int j=0;num[j]<=sqrt;j++)
  {
   if(i%num[j]==0)//如果不是素数
   {
    count--;//素数个数减1
    System.out.println(i+"%"+num[j]+"=0,非素数,素数已有"+count+"个");
    break;
   }else if(num[j+1]>sqrt)//如果是素数
   {
    System.out.println(i+"%"+num[j]+"≠0,是素数,素数已有"+count+"个");
   }else//不能确定是不是素数
   {
    System.out.println(i+"%"+num[j]+"≠0");
   }
  }
 }
}
创建于2017-02-03 05:02:05 -0500
分类: 文本
«Newer      Older»

----Comments(1)----
0℃的回※忆~★ (@zhaofuzhon) | @ at 2017-02-03 10:30:
……
Comment:
Name:

Back to home

Subscribe | Register | Login | N