Java基础算法

 1 .99乘法表
Java代码  
  1.      
  2. public void nineNineMulitTable(){  
  3.     for (int i = 1,j = 1; j <= 9; i++) {   
  4.           System.out.print(i+"*"+j+"="+i*j+" ");   
  5.           if(i==j){   
  6.               i=0;   
  7.               j++;   
  8.               System.out.println();   
  9.           }   
  10.       }   
  11. }  
 2.给定一个java.util.Date对象,如何转化为”2007-3-22 20:23:22”格式的字符串 
 
Java代码  
  1.    
  2.     public String date2FormatStr(Date date)  
  3.     {   
  4.       SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");   
  5.       String str = sdf.format(date);   
  6.       return str;   
  7.     }   

 
3.写一个方法,能够判断任意一个整数是否素数 
 

Java代码  收藏代码
  1.    
  2. public boolean isPrimeNumber(int num)   
  3. {   
  4.   for (int i = 2; i <= Math.sqrt(num); i++) {   
  5.       if(num%i==0)   
  6.       {   
  7.           return false;   
  8.       }   
  9.   }   
  10.   return true;   
  11. }   

 

4.写一个方法,输入任意一个整数,返回它的阶乘
Java代码  收藏代码
  1.    
  2.  public int factorial(int num)   
  3.  {   
  4.    //递归   
  5.    if(num == 1)   
  6.    {   
  7.        return 1;   
  8.    }   
  9.    return num*factorial(num-1);  
  10.  }  
 
5.写一个方法,用二分查找法判断任意整数在任意整数数组里面是否存在,若存在就返回它在数组中的索引位置,不存在返回-1 
Java代码  [ing]
  1.    
  2.  public int binarySearch(int[] dataset,int data,int beginIndex,int endIndex){   
  3.    int midIndex = (beginIndex+endIndex)/2;   
  4.    //如果查找的数要比开始索引的数据要小或者是比结束索引的书要大,或者开始查找的索引值大于结束的索引值返回-1没有查到  
  5.    if(data dataset[endIndex]||beginIndex>endIndex){  
  6.        return -1;  
  7.    }  
  8.    if(data 
  9.        return binarySearch(dataset,data,beginIndex,midIndex-1);   
  10.    }else if(data>dataset[midIndex])   
  11.    {   
  12.        return binarySearch(dataset,data,midIndex+1,endIndex);   
  13.    }else {   
  14.        return midIndex;   
  15.    }   
  16.  }   
  17.    
  18.     
  19.   public int binarySearch(int[] dataset ,int data)   
  20.   {   
  21.     int beginIndex = 0;    
  22.     int endIndex = dataset.length - 1;    
  23.     int midIndex = -1;   
  24.     if(data dataset[endIndex]||beginIndex>endIndex){  
  25.         return -1;   
  26.     }  
  27.     while(beginIndex <= endIndex) {   
  28.         midIndex = (beginIndex+endIndex)/2;   
  29.         if(data 
  30.            endIndex = midIndex-1;    
  31.         } else if(data>dataset[midIndex]) {    
  32.           beginIndex = midIndex+1;    
  33.         }else {   
  34.           return midIndex;   
  35.         }   
  36.     }   
  37.     return -1;   
  38.   }   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值