七、数组及数组排序、二分法查找

数 组:用于存储同一类型数据的一个容器。好处:可以对该容器中的数据进行编号,从0开始。数组用于封装数据,就是一个具体的实体。

如何在java中表现一个数组呢?两种表现形式。

1)、元素类型[] 变量名 = new 元素类型[元素的个数];

2)、元素类型[] 变量名 = {元素1,元素2...};

元素类型[] 变量名 = new 元素类型[]{元素1,元素2...};

 

数组的排序:

 

二分查找法。必须有前提:数组中的元素要有序。

   

 1  public static int halfSeach_2(int[] arr,int key){
 2 
 3         int min,max,mid;
 4 
 5         min = 0;
 6 
 7         max = arr.length-1;
 8 
 9         mid = (max+min)>>1; //(max+min)/2;
10 
11         while(arr[mid]!=key){
12 
13             if(key>arr[mid]){
14 
15                 min = mid + 1;
16 
17             }
18 
19             else if(key<arr[mid])
20 
21                 max = mid - 1;
22 
23             if(max<min)
24 
25                 return -1;
26 
27             mid = (max+min)>>1;
28 
29         }
30 
31         return mid;
32 
33     }

 

posted @ 2014-06-05 22:47  恢恢888  阅读(187)  评论(0编辑  收藏  举报