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

java二分查找

二分查找:
   二分查找比线性查找数度要好很多,尤其是对大数组来说更为显著,就像是猜字游戏一样
猜字游戏:
   二分查找的方法和我们小时候玩的猜字游戏是一样的。在这个游戏里面,有一个小朋友会让你猜她正在想的一个1至100之间的数,
你猜了一个数以后,她会告诉你三种选择中的一个:你猜的比她想的小,或者大了,或者猜对了。
   为了能用最少的次数开始猜对,必须从50开始猜,如果她说你猜的太小,则推出那个书在51至100之间,所以下一次猜的是75(51至100的一般)。如果她说你猜得有点大了,则数在(1-49)之间,所以下一次猜25.
  
   每一次猜都会将可能的值划分成两部分。最后范围会缩小到一个数字那么大。不多说。看程序
 /**
 * @author licheng
 * @function 二分查找
 *
 * */
package com.licheng.array;
public class BinarySearch {
 /**
  * @author licheng
  * *二分查找特定整数在整型数组中的位置(递归)
  * @param dataSet(查找的数组)
  * @param data(查找的数据)
  * @param beginIndex(开始下标)
  * @param endIndex(结束下标)
  * @return 数据所在下标
  *
  * */
 public int binarySearch(int [] dataSet, int data, int beginIndex, int endIndex) {
  //如果查找的数要比开始索引的数据要小或者是比结束索引的书要大,或者开始查找的索引值大于结束的索引值返回-1没有查到
  int minIndex = (beginIndex + endIndex)/2;
  
  if (beginIndex > endIndex || data < dataSet[beginIndex] || data > dataSet[endIndex]) {
   return -1;
  }
  if (data > dataSet[minIndex]) {
   return binarySearch(dataSet, data, minIndex+1, endIndex);
  } else if (data < dataSet[minIndex]) {
   return binarySearch(dataSet, data, beginIndex, minIndex-1);
  } else {
   return minIndex;
  }
 }
 
 /**
     *二分查找特定整数在整型数组中的位置(非递归)
     *@param dataset
&


相关文档:

java运行环境 类装载器ClassLoader

  今天观看了蓝山老师java背后的秘密相关视频,发现要想写出高性能的程序,一定要对其运行原理以及其运行环境有相当程度的了解。那ClassLoader是相当关键的一个部分。
  先说下java程序运行的基本流程,先将java文件编译为class文件,然后通过ClassLoader(类加载器),加载到Runtime Data Area(类似于内存)中 ......

Java中的类型转换


本作品采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可。
无论在C/C++还是在Java,强制类型转换已经不是陌生的概念了。但是要想全面掌握Java中类型转换的要点可不那么简单,本文将带领大家一同了解有关Java类型转换的所有要点。
数值类型的类型转换
众所周知,Java有两种数据类型:基本数据 ......

java复制,剪切,删除文件操作

package OALogic.sql.data;
import java.io.*;
public class FileOperate {
   public FileOperate() {
   }
  
   public static void main(String args[]){
       newFolder("D:/100");
   }
   /**
  ......

Java Scanner NoSuchElementException

今天同学问我一个Java问题,代码结构如下:
Scanner scan = new Scanner(System.in);
scan.next();
scan.close();
scan = new Scanner(System.in);
scan.next(); 
当程序运行到第五行是会抛出java.util.NoSuchElementException
          at&nb ......

java面试题

JAVA面试题集- -
基础知识:
1.C++或Java中的异常处理机制的简单原理和应用。
当JAVA程序违反了JAVA的语义规则时,JAVA
虚拟机就会将发生的错误表示为一个异常。违反语义规则包括2种情况。一种是JAVA类库内置的语义检查。例如数组下标越界,会引发
IndexOutOfBoundsException;访问null的对象时会引发NullPointerExcepti ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号