首页 > 其他 > 详细

静态查找

时间:2014-11-12 13:39:54      阅读:232      评论:0      收藏:0      [点我收藏+]

静态查找设置哨兵,可以减少比较次数,效率会有所提高。静态查找算法简单,效率较低

 1 package com.gxf.search;
 2 
 3 /**
 4  * 静态查找实现
 5  * @author xiangfei
 6  *
 7  */
 8 public class StaticSearch { 
 9     
10     public int search(int array[], int k){
11         array[0] = k;//设置哨兵
12         int index = array.length - 1;
13         
14         for(; index >= 0;index--){
15             if(array[index] == k)
16                 break;
17         }
18         return index;
19     }
20     /**
21      * 测试
22      * @param args
23      */
24     public static void main(String args[]){
25         int array[] = {0,3,7,9,30,25};
26         StaticSearch search = new StaticSearch();
27         
28         for(int i = 1; i < array.length; i++){
29             System.out.print(array[i] + " ");
30         }
31         System.out.println();
32         int elementToSear = 7;
33         int index = search.search(array, elementToSear);
34         if(index <= 0){
35             System.out.println(elementToSear + "不在数组中!");
36         }
37         else{
38             System.out.println(elementToSear + "在数组中的位置:" + index);
39         }
40     }
41 }

执行结果

3 7 9 30 25
7在数组中的位置:2

静态查找

原文:http://www.cnblogs.com/luckygxf/p/4091960.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!