数据结构和算法是一个程序的灵魂,优化程序的主要手段。在查询里,分为静态查询和动态查询。有序表是静态查询的一种,在。有序表查找过程中,可以用折半查找实现。代码如下:
package Array;
/**
* 折半查找
* @author luozhong
*
*/
public class ArrayTest_lesson1 {
//定义数组
int array[]=new int[]{0,1,2,3,4,5,6,7,8,9};
//定义三个变量
int low, mid,high;
public static void main(String args[]){
new ArrayTest_lesson1().init(9);
}
public void init(int temp){
//此变量指着第一个元素
low=1;
//此变量指着末元素
high=array.length;
//调用查询方法
int key=Index(low,high,temp);
System.out.println("查询结果为:"+key);
}
private int Index(int low2, int high2, int temp) {
//判断循环的条件
while(low2<=high2){
mid=(low2+high2)/2;
//判断是否与查询值相等,返回索引位置
if(temp==array[mid]) return mid;
//如果小于数组元素
else if(temp<array[mid]) high2=mid-1;
////如果大于数组元素
else low2=mid+1;
}
return 0;
}
}
折半查找的性能分析,他查找的过程可用二叉树来描述。折半查找在查找不成功时候和给定值进行比较关键字个数最多也不超过{logn/log2}+1.
假设表中每个记录查找概率相等(p=1/n),则查找成功时的折半查找的平均查找长度如图:
- 大小: 11.6 KB
分享到:
相关推荐
中软国际培训的学习笔记,很值得参考。学习java数据结构很有必要看看
Java数据结构和算法 Java数据结构和算法 Java数据结构和算法 Java数据结构和算法 Java数据结构和算法 Java数据结构和算法 Java数据结构和算法 Java数据结构和算法
《Java数据结构和算法》(第2版)介绍了计算机编程中使用的数据结构和算法,对于在计算机应用中如何操作和管理数据以取得最优性能提供了深入浅出的讲解。全书共分为15章,分别讲述了基本概念、数组、简单排序、堆和...
java 数据结构总结的思维导图笔记,个人做的非常全,需要的自行下载
java数据结构总结java数据结构总结java数据结构总结java数据结构总结java数据结构总结
Java数据结构 线性表,链表,哈希表是常用的数据结构,在进行Java开发时,JDK已经为我们提供了一系列相应的类来实现基本的数据结构
Java数据结构和算法.pdf
《Java数据结构与算法》中的示例applet,很完整很全面,方便大家交流学习
java数据结构经典例题java数据结构经典例题java数据结构经典例题java数据结构经典例题java数据结构经典例题java数据结构经典例题java数据结构经典例题java数据结构经典例题java数据结构经典例题java数据结构经典例题...
全套详细Java数据结构PPT!Java数据结构课件
Java 数据结构 applet演示 Java 数据结构 applet演示 Java 数据结构 applet演示 Java 数据结构 applet演示
java数据结构全套
很全面的java数据结构的习题,帮助大家学习java的数据结构,比一般的只懂得java API的程序员更胜一筹
包含Java数据结构和算法(第二版)书中每章节源代码
java 数据结构和算法,比较好的资源,希望大家喜欢。
JavaJava 数据结构详细教程Java 数据结构详细教程Java 数据结构详细教程Java 数据结构详细教程Java 数据结构详细教程Java 数据结构详细教程Java 数据结构详细教程Java 数据结构详细教程Java 数据结构详细教程Java ...
[中国电力出版社] Java 数据结构和算法 第2版 (中文版) [Sams Publishing] Data Structures and Algorithms in Java 2nd Edition (英文版) ☆ 图书概要:☆ 通过由基于Java演示程序所组成的可视专题讨论来掌握...
Java数据结构学习笔记
Java数据结构和算法-带书签目录扫描版 带完整目录书签的清晰扫描版本