美国上市公司,专注Java培训21年

Java常用查找算法及代码


面试中经常会问一些查找算法,今天来总结一下常用的查找算法。

一、顺序查找

描述:从表中的第一个或者是最后一个记录开始,将表中记录的关键字和给定的值进行逐个比较,若某个记录的关键字和给定值相等,则查找成功,若表中所记录的关键字和给定值都不相等,则查找失败。

算法实现:

Java常用查找算法及代码

二、二分查找

描述:折半查找的前提条件是在一个有序的序列汇总,首先确定待查询记录所在的区间,然后逐步的缩小范围区间直到找到或者找不到该记录为止,与数学中的二分法一样。

算法实现:

Java常用查找算法及代码

三、分块查找

描述:

1、首先将查找分成若干块,在每一块中数据元素的存放是任意的,但块与块之间必须是有序的。

假设这种排序是按关键字值递增的,也就是说在第一块中任意一个数据元素关键字都小于第二块中所有数据元素的关键字,第二块中任意一个数据元素的关键字都小于第三块中所有元素的关键字,依次轮推。

2、建立一个索引表,把每块中最大的关键字值按块的顺序放在一个辅助数组中,这个索引表也按升序排列。

3、查找时先用给定的关键字值在索引表中查找,确定满足条件的数据元素存放在那个块中,查找方法既可以是折半也可以是顺序查找。

4、再到相应的块中顺序查找,便可以得到查询结果。

算法实现:

Java常用查找算法及代码

感谢大家阅读由java培训机构分享的“Java常用查找算法及代码”希望对大家有所帮助,更多精彩内容请关注Java培训官网


【免责声明】本文部分系转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,如涉及作品内容、版权和其它问题,请在30日内与我们联系,我们会予以重改或删除相关文章,以保证您的权益!

Java开发高端课程免费试学

大咖讲师+项目实战全面提升你的职场竞争力

  • 海量实战教程
  • 1V1答疑解惑
  • 行业动态分析
  • 大神学习路径图

相关推荐

更多
  • java语言中,char 类型变量是否能保存一个汉字?
    java语言中,char 类型变量是否能保存一个汉字?
    在 Java 语言中,可以使用 char 类型的变量来存储单个的字符,请问是否能用 char 类型的变量来存储一个汉字呢? 详情>>

    2015-10-15

  • 有史以来最牛的一张程序员职业路线图!
    有史以来最牛的一张程序员职业路线图!
    最近在琢磨程序员到底路在何方,经过不断的自虐和代入,终于在迷雾森林中得图一张,看之豁然开朗。独乐乐不如众乐乐,share了: 详情>>

    2018-05-22

  • java中变量和常量有什么区别?
    java中变量和常量有什么区别?
    在使用 Java 语言进行程序设计时,经常需要用到常量和变量来存储信息。请简单叙述变量和常量有什么区别? 详情>>

    2015-10-15

  • short 和 char 类型的取值范围各是多少?
    short 和 char 类型的取值范围各是多少?
    在使用 Java 语言进行程序设计时,经常需要使用 short 型和 char 型存储数值,请简述short 型和 char 型的取值范围各是多少? 详情>>

    2015-10-15

  • Java开班时间

    收起