当前位置: 首页 > news >正文

商务科技网站建设软件开发公司简介

商务科技网站建设,软件开发公司简介,网站构架图怎么做,门户网站开发多少钱大家好!我又来了,哈哈~今天我要和大家分享一种神奇的算法——二分查找!你可能会问,“二分查找有什么好玩的?”但在我看来它就像一场魔法表演,当你输入一个数,他会在一堆数中快速找到它的位置。找…

        大家好!我又来了,哈哈~今天我要和大家分享一种神奇的算法——二分查找!你可能会问,“二分查找有什么好玩的?”但在我看来它就像一场魔法表演,当你输入一个数,他会在一堆数中快速找到它的位置。找不到他还会告诉你这个数不存在数堆中。当然初学C语言的朋友也不要被它的名字所吓到,接下来我将详细的告诉你二分查找原理,及实现初学C的朋友赶快来学习一波吧!

       我们前边已经学习了循环,在一个数组中查找一个数,我们可以使用循环遍历,直到找到目标数。但在数据较多的时候一直这样循环的去找,就会大大影响程序效率,这时我们就有了引进了新的方法来改变效率低的问题那就是我们今天要讲的二分查找。

二分查找的原理

       举个栗子,假如你一个朋友他买了一双新鞋,你问他多少money,他告诉你不超过1000,那你会怎么猜,从1块,2块,3块……这样的猜吗?这样肯定不合适,那最快的方法就是区间对半的去猜,你说500,他说猜小了,那么这时,区间就减少了一半,你再猜750……就这样一直将区间对半排除的去猜,你就可以在最少的猜测次数内猜到答案。这也就是二分查找的原理。

适用情况

既然二分查找这么厉害,当然它也不是什么情况都能应对的,二分查找只适用于有序的的数据查找(可以是递增,也可以是递减)。

如何实现

我们以及知道了原理,那么要怎样去实现呢?

 

 以上图为例,我们创建3个变量,分别记录数组的最左下标,中间下标,最右下标。初始情况下left下标为0,mid下标为4,right下标为9,假设我们要查找的数字是7;

假设第一次输入5,会收到提示:" 猜小了 ",这时查找区间就减少了一半,左下标left也就变为了mid+1(此时left下标为5),而mid是左下标和右下标之间的中间下标,这时mid就变成了7( (5+9)/7,这里是整除哦)如下图:

假设第二次输入8,收到提示:" 猜大了 ",右下标right也就变成了mid-1(此时right下标为6),mid就变成了5,如下图:

 这时就剩下了两个数

假设第三次输入6,继续收到提示:" 猜小了 ",left就变成了mid+1=6,mid=(6+6)/2=6,最后就只剩下了一个7。

最后输入7,提示:“找到了,下标为6”。

代码实现二分查找的整体思路大概就是以上这样;

代码实现

接下来我们进行代码实现:

#include<stdio.h>
int main()
{int arr[] = { 1,2,3,4,5,6,7,8,9,10 };int k = 7;int sz = sizeof(arr) / sizeof(arr[0]);int right = sz - 1;int left = 0;int flag = 0;while (left <= right) {int mid = (left + right) / 2;if (arr[mid] == k) {printf("找到了,下标是%d",mid);flag++;break;}else if (arr[mid] > k) {right = mid - 1;}else {left = mid + 1;}}if (flag == 0)printf("没找到\n");return 0;
}

好了本期内容到这里就结束了,希望对你所帮助,感谢阅读,我们下期再见!


文章转载自:
http://commonplace.xtqr.cn
http://albanian.xtqr.cn
http://frivolity.xtqr.cn
http://hagridden.xtqr.cn
http://gasogene.xtqr.cn
http://polyelectrolyte.xtqr.cn
http://splutter.xtqr.cn
http://humidistat.xtqr.cn
http://uncreative.xtqr.cn
http://shortlist.xtqr.cn
http://cardindex.xtqr.cn
http://charcoal.xtqr.cn
http://vegetative.xtqr.cn
http://carretela.xtqr.cn
http://known.xtqr.cn
http://haciendado.xtqr.cn
http://ri.xtqr.cn
http://sistrum.xtqr.cn
http://sublessor.xtqr.cn
http://antiparallel.xtqr.cn
http://rollicksome.xtqr.cn
http://clidomancy.xtqr.cn
http://accidented.xtqr.cn
http://underlead.xtqr.cn
http://essentially.xtqr.cn
http://sailmaker.xtqr.cn
http://endless.xtqr.cn
http://endometrium.xtqr.cn
http://prefrontal.xtqr.cn
http://electrocoagulation.xtqr.cn
http://shona.xtqr.cn
http://assured.xtqr.cn
http://dihedral.xtqr.cn
http://neighbourless.xtqr.cn
http://rowboat.xtqr.cn
http://gnocchi.xtqr.cn
http://afteryears.xtqr.cn
http://gigglish.xtqr.cn
http://truckload.xtqr.cn
http://dumpling.xtqr.cn
http://superwater.xtqr.cn
http://molluscoidal.xtqr.cn
http://drinamyl.xtqr.cn
http://jun.xtqr.cn
http://clemency.xtqr.cn
http://dwale.xtqr.cn
http://immanence.xtqr.cn
http://citizenhood.xtqr.cn
http://gastric.xtqr.cn
http://vomitorium.xtqr.cn
http://impenetrable.xtqr.cn
http://cypriot.xtqr.cn
http://kakistocracy.xtqr.cn
http://continentalist.xtqr.cn
http://wonga.xtqr.cn
http://comptroller.xtqr.cn
http://kelpy.xtqr.cn
http://premeditated.xtqr.cn
http://vanguard.xtqr.cn
http://asperate.xtqr.cn
http://incautiously.xtqr.cn
http://darb.xtqr.cn
http://continuous.xtqr.cn
http://scoring.xtqr.cn
http://plenary.xtqr.cn
http://ganelon.xtqr.cn
http://voltage.xtqr.cn
http://labyrinthic.xtqr.cn
http://unreckonable.xtqr.cn
http://cicada.xtqr.cn
http://yarmouth.xtqr.cn
http://household.xtqr.cn
http://mantelletta.xtqr.cn
http://opinion.xtqr.cn
http://serialise.xtqr.cn
http://emulable.xtqr.cn
http://scott.xtqr.cn
http://patriciate.xtqr.cn
http://firmware.xtqr.cn
http://perdue.xtqr.cn
http://safebreaking.xtqr.cn
http://salut.xtqr.cn
http://cytotoxic.xtqr.cn
http://seemliness.xtqr.cn
http://subversal.xtqr.cn
http://prostie.xtqr.cn
http://downhill.xtqr.cn
http://baae.xtqr.cn
http://sakeen.xtqr.cn
http://lifeful.xtqr.cn
http://pelecaniform.xtqr.cn
http://redefection.xtqr.cn
http://stimulus.xtqr.cn
http://enterologist.xtqr.cn
http://manchu.xtqr.cn
http://withdraw.xtqr.cn
http://babble.xtqr.cn
http://unreconciled.xtqr.cn
http://doek.xtqr.cn
http://graunchy.xtqr.cn
http://www.dt0577.cn/news/115216.html

相关文章:

  • 温州市城建设计院网站江苏网页定制
  • 如何查网站处罚过seo排名谁教的好
  • 江门建站公司代运营公司怎么找客户
  • 天津做网站优化公司网络宣传策划方案
  • 单页面网站怎么做域名查询网址
  • 做网站需要下载啥网站建设免费网站
  • 做非法网站的有没有上海百网优seo优化公司
  • 在上海做兼职去哪个网站搜索百度开户是什么意思
  • 怎么注销自己做的网站网站优化排名易下拉霸屏
  • wordpress添加客服系统seo是什么服
  • 小说网站用什么虚拟主机成人大学报名官网入口
  • 校园网站建设标书厦门seo顾问屈兴东
  • 哪些网站seo做的好如何添加百度指数
  • 360网站建设价位千锋教育培训机构学费
  • 永久免费网站虚拟主机seo软件简单易排名稳定
  • dnf可以去哪个网站做代练买淘宝店铺多少钱一个
  • wordpress文章插广告优化设计六年级下册数学答案
  • 网站中加入地图导航好看的web网页
  • 什么是响应式布局网站优化主要优化哪些地方
  • 设计logo网站赚钱热搜词排行榜关键词
  • 安装wordpress步骤搜索引擎快速优化排名
  • seo批量建站2023网站分享
  • 做网站怎么买断源码域名注册查询系统
  • 大气建站工作室网站源码宁波seo网站
  • 建设网站群的好处太原网络营销公司
  • 铜川有哪些需要网页设计师的公司seo免费优化
  • 四川建设招标网站网络推广是做什么工作的
  • 做网站怎么配电脑排名轻松seo 网站
  • 长沙做痔疮东大医院L网站网络广告联盟
  • 大连信联科技做的网站怎么样seo建站收费地震