易截截图软件、单文件、免安装、纯绿色、仅160KB

java 二分法


public class Test4 {
 public int binarySearch(int[] items, int value){
  
     int startIndex  = 0;
     int stopIndex   = items.length - 1;
     int middle      = (int)Math.floor((stopIndex + startIndex)/2);
 
     while(items[middle] != value && startIndex < stopIndex){
 
         //adjust search area(调整查找范围)
         if (value < items[middle]){
             stopIndex = middle - 1;
         } else if (value > items[middle]){
             startIndex = middle + 1;
         }
 
         //recalculate middle(重新计算中项索引)
         middle = (int)Math.floor((stopIndex + startIndex)/2);
     }
 
     //make sure it's the right value(确保返回正确的值)
     return (items[middle] != value) ? -1 : middle;
 }
 /**
  * @param args
  */
 public static void main(String[] args) {
  Test4 t = new Test4();
  int aa[]={1,3,5,7,9};
  System.out.println("!!!!!!!!!!!!!!!!!!!!!!!"+t.binarySearch(aa, 5));
 }
}


相关文档:

传智播客java培训ORACLE总结(3)


 
ORACLE的学习已经告一段茖,今天已经开始HIBERNATE的学习,总体感觉挺良好的,虽然很多的知识不能记住,但是在使用的时候能够迅速的找对方法来解决相应的问题,只要勤加练习,就可以记住。只不过,时间有珢,HIBERNATE的课程也只有三天的时间,所以在这期间我的任务是尽量吸引,在花放假的时候来复习 ......

Java data 总结

1.计算某一月份的最大天数
Calendar time=Calendar.getInstance();
time.clear();
time.set(Calendar.YEAR,year); //year 为 int
time.set(Calendar.MONTH,i-1);//注意,Calendar对象默认一月为0
int day=time.getActualMaximum(Calendar.DAY_OF_MONTH);//本月份的天数
注:在使用set方法之前,必须先 ......

Java Socket

最近研究下socket,ctrl+v了下网上的东西:
   事实上网络编程简单的理解就是两台计算机相互通讯数据而已。对于程序员而言,去掌握一种编程接口并使用一种编程模型相对就会显得简单的多了。Java SDK提供一些相对简单的Api来完成这些工作,Socket就是其中之一。
  对于Java而言。这些Api存在与Java.net这个 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号