当前位置:首页 > 科技 > 正文内容

二分查找算法能适用于散列表吗(二分查找算法java代码)

2023-02-06 17:32:06科技763

你们好,最近小活发现有诸多的小伙伴们对于二分查找算法原理,二分查找算法这个问题都颇为感兴趣的,今天小活为大家梳理了下,一起往下看看吧。

二分查找算法能适用于散列表吗(二分查找算法java代码)

1、 线性搜索的条件:要求数据表有序。

2、 线性搜索的工作原理:首先将表格中间记录的关键词与搜索关键词进行比较;

3、 (如果两者相等,则搜索成功)

4、 (否则,将表分成两个子表,根据比较结果决定寻找哪个子表。)

5、 具体实现过程:第一步,输入数据。

6、 可以直接将需要的数据存放在数组中,比如int a [10]={1,2,3,4,5,6,7,8,9,10 };

7、 也可以循环输入。

8、 for(I=0;I n;我)

9、 {

10、 scanf('%d 'a[I]);

11、 }

12、 实现数据输入数组;

13、 具体实现过程:第二步:写循环。

14、 如果在某个周期中没有找到匹配的数据,那么应该将(下标最大值1)或(下标最小值-1)赋给中间值mid

15、 当下标最小值超过最大值时,循环结束,且(低高);

16、 而(低=高)是建立环路的条件。

17、 具体实施过程:第二步,判断。

18、 如果循环找到与您的搜索匹配的数据,则结束循环;

19、 if(x==a[mid])

20、 {

21、 Printf('找到数字' 6 '');

22、 打破;

23、 }

24、 注意:如果你想找到同样数量的你的数据,使用continue;

25、 即:

26、 if(x==a[mid])

27、 {

28、 Printf('找到数字' 6 '');

29、 柜台;//记录的数量

30、 继续;

31、 }

32、 c语言代码实现:

33、 #包含stdio.h

34、 int main()

35、 {

36、 int a[10]={1,2,3,4,5,6,7,8,9,10 };

37、 Printf('找到数字“6”。\ n’);

38、 int low=1;

39、 int high=10//数组的最大下标n-1

40、 int x=6;//要查找的数字

41、 int mid

42、 while(低=高)

43、 {

44、 mid=(低高)/2;//下标的一半,int类型的除法和舍入。

45、 if(x a[mid])

46、 {

47、 高=中1;

48、 }

49、 if(x==a[mid])

50、 {

51、 Printf('找到数字' 6 '');

52、 打破;

53、 }

54、 其他

55、 {

56、 低=中1;

57、 }

58、 }

59、 返回0;

60、 }

61、 运行程序;成功截图如下;

62、 二分搜索法的时间复杂度为O(log(n)),最坏的时间复杂度为O(n)。

以上就是二分查找算法这篇文章的一些介绍,希望能帮助到大家。

扫描二维码推送至手机访问。

版权声明:文章内容摘自网络,如果无意之中侵犯了您的版权,请联系本站,本站将在3个工作日内删除。谢谢!

本文链接:http://xixia168.cn/n/kj/258246.html

标签: 算法
分享给朋友:

“二分查找算法能适用于散列表吗(二分查找算法java代码)” 的相关文章

每隔几年出现一次闰年(闰年几年一次)

每隔几年出现一次闰年(闰年几年一次)

大家好,今天就和丹尼一起来看看这个问题吧 。闰年几年一次,每隔几年出现一次闰年很多人还不知道,现在让我们一起来看看吧!  一、  闰年几年一次  闰年是公历中的名词,分为普通闰年和世纪闰年。普通闰年是4年一次,公历年份是4的倍数的,且不是100的倍数,为普通闰年。世纪闰年是400年一次,公历年份是整...

飞机黑匣子为啥不会损坏(飞机黑匣子为什么不会坏)

飞机黑匣子为啥不会损坏(飞机黑匣子为什么不会坏)

大家好,今天就和丹尼一起来看看这个问题吧 。飞机黑匣子为什么不会坏,飞机黑匣子为啥不会损坏很多人还不知道,现在让我们一起来看看吧!  导语:大家都知道,遇到空难,查明原因的时候需要找到飞机的黑匣子。有些朋友对飞机的黑匣子感兴趣,所以想来好好了解一下,飞机黑匣子为什么不会坏?飞机黑匣子为啥不会损坏?对...

大暑和小暑有什么区别(小暑和大暑是什么意思)

大暑和小暑有什么区别(小暑和大暑是什么意思)

大家好,今天就和猫猫一起来看看这个问题吧 。小暑和大暑是什么意思,大暑和小暑有什么区别很多人还不知道,现在让我们一起来看看吧!  一、小暑和大暑是什么意思  暑,表示炎热的意思,小暑为小热,还不十分热。小暑是相对大暑而言,古人认为小暑期间,还不是一年中最热的时候,故称为小暑。小暑意指天气开始炎热,但...

端午节挂艾草有什么寓意(端午节为什么要挂艾草)

端午节挂艾草有什么寓意(端午节为什么要挂艾草)

大家好,今天就和蜜蜜一起来看看这个问题吧 。端午节为什么要挂艾草,端午节挂艾草有什么寓意很多人还不知道,现在让我们一起来看看吧!    端午节为什么要挂艾草  古人认为,端午节一到,夏季炎热天气就到了,天气炎热,自然界的各种飞虫走兽开始兴盛,包括一些有毒的小动物,比如毒蛇、蟾蜍、蝎子、蜈蚣等也会活跃...

闰年闰月是怎么回事(闰年闰月什么意思)

闰年闰月是怎么回事(闰年闰月什么意思)

大家好,今天就和吖吖一起来看看这个问题吧 。闰年闰月什么意思,闰年闰月是怎么回事很多人还不知道,现在让我们一起来看看吧!  导语:闰年闰月是怎么回事?公历中一年265年,实际上地球绕一周的时间应该是365.2422天,为了弥补这个时间缺憾,因此有了闰年。而闰月则是农历历法出现的置润来平衡历法,我国是...

为什么三月三要煮鸡蛋(三月三煮鸡蛋的来历)

为什么三月三要煮鸡蛋(三月三煮鸡蛋的来历)

大家好,今天就和兔兔一起来看看这个问题吧 。三月三煮鸡蛋的来历,为什么三月三要煮鸡蛋很多人还不知道,现在让我们一起来看看吧!    三月三煮鸡蛋的来历源于古代楚地人们因为风吹雨打,头痛病很常见。三月初三,神农路过云梦泽(今孝感),见乡民头疼难耐,他找来野鸡蛋和地菜,煮给人们充饥。当人们吃了以后,头不...