安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

Python二分查找法

11月7日 回头爱投稿
  今天分享的主题内容是:二分查找法。
  在开启今天分享的内容之前,我们一起先来了解除法相关的运算符知识。
  Python中与除法相关的三个运算符是和和:,这是传统的除法,522。5,在Python中,这个叫地板除,942,这个是取模操作,也就是取余数,420,521
  1、什么是二分查找法
  二分查找也称折半查找(BinarySearch),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列。
  2、实现原理
  首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;
  否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。
  重复以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止,此时查找不成功。
  3、Python代码实现1定义一个二分查找的普通方法,传入两个参数,一个是列表list1,一个是要查找的值value2defbinarysearchnormal(list1,value):3拿到列表的长度4lengthlen(list1)5列表的开始值索引6start07列表的结束值索引8endlength19while循环遍历10whilestartend:11获取列表中间位的索引值12middle(endstart)213判断中间位的值是否等于要查找的值value14if(list1〔middle〕value):15找到了匹配的值就返回True16returnTrue17判断中间位的值大于要查找的值value时18elif(list1〔middle〕value):19就将列表结束值的索引调整为中间位索引值120endmiddle121else:22否则就是将列表开始值的索引调整为中间位索引值123startmiddle124找不到时就返回False25returnFalse262728定义一个二分查找的递归方法,传入两个参数,一个是列表list2,一个是要查找的值value29defbinarysearchrecursion(list2,value):30获取列表的长度31lengthlen(list2)32获取列表的中间位索引值33middlelength234递归结束的条件35iflength0:36returnFalse37查找到了就返回True38if(list2〔middle〕value):39returnTrue40如果中间位的值小于value,则递归调用,传入的是中间位到结束位的列表和要查找的值41elif(list2〔middle〕value):42returnbinarysearchrecursion(list2〔middle:〕,value)43如果中间位的值大于value,则递归调用,传入的是从开始位到中间位的列表和要查找的值44else:45returnbinarysearchrecursion(list2〔0:middle〕,value)4647ifnamemain:48print(92)49print(binarysearchnormal(〔4,5,6,7,8,8,9,0〕,19))50print(binarysearchrecursion(〔22,33,55,66,77,88,99〕,22))结语:
  今天的分享就到这里了,感兴趣的小伙伴可以通过以上代码进行实操,以加深对二分查找法的理解。
投诉 评论 转载

4000元和2000元手机有什么区别?除了价格,这3点差距最总有人把性价比这个词放在嘴边,但真正懂手机的朋友都知道,想要把手机做成高端品牌,就必须和性价比这个词脱开关系,华为、三星以及苹果的高端手机性价比都不高。这些售价超过400……如果一个人坚持学英语,有一天突然不看字幕也能看懂美剧及电影是有一天晚上,老公又捧着手机追看《权力的游戏》,11点都过了,还在看。我躺着睡,听着剧中对话,怎么也睡不着,于是就闭眼静听,听着听着,突然发现人物对话居然能听懂了,瞬间,我激动了……来分一杯羹?大众点评成立新公司含共享单车服务读创深圳商报记者涂竞玉随着共享电单车投放规模持续扩大,以及大众共享出行意识的提升,共享电单车的日常使用率进一步提高。数据显示,2021年中国共享电单车的数量接近40……秋招算法岗灰飞烟灭,应届硕士如何拿到互联网大厂offer?如何看待2021秋招算法岗灰飞烟灭?你会被硕士海归、顶会论文、TOP竞赛劝退吗?应届硕士0顶会0比赛能拿到大厂offer吗?35岁会面临失业吗?算法岗职业发展……私域流量兴起的当下,企业主该何去何从?现在,各种各样的概念满天飞,无外乎就是想收割韭菜。当然,小白和韭菜太多,镰刀不够用。因此,每个人都要不断提高认知,要有起码的辨别能力。由于,我们处在移动互联网……买手机不能小气,2022年4月口碑最好5款手机,用个5年不成基本上今年上半年的手机发布会都已经到四月份告一段落,下个月基本上不会有高端旗舰机的发布了,很多朋友最近都在纠结买什么手机能用35年,其实要想用的久,在选择手机上还真不能小气,给……Python二分查找法今天分享的主题内容是:二分查找法。在开启今天分享的内容之前,我们一起先来了解除法相关的运算符知识。Python中与除法相关的三个运算符是和和:,这是传统的除法,52……代表上会从生活出发数据滥用算法歧视如何管?(两会人物)代表上会从生活出发:数据滥用、算法歧视如何管?中新网福州3月3日电题:代表上会从生活出发:数据滥用、算法歧视如何管?记者龙敏互联网上,只要点开看过……能否把1GB的数据压缩到1MB甚至更小的体积?1GB的数据确实可以压缩到比1MB更小的体积。比如1。56GB的数字1,如果用txt文本的形式表示出来就会出现满大屏的1,但压缩过后的压缩文件可以描述为:1。txt里有多……小米11T11TPro价格泄露售价约合37984940元起小米11T11TPro手机目前已经官宣,将于9月15日在海外发布。这两款手机有望分别配备联发科天玑1200、高通骁龙888芯片,确认将支持120W有线快充。根据外媒Win……年中行业观察丨工业互联网向纵深发展加速落地释放倍增效应今年上半年,工业互联网政策利好不断出台,平台应用加速落地,5G工业互联网赋能垂直行业释放叠加效应。工信部数据显示,截至目前,我国已培育100个以上具有行业特色和区域影响力的工业……抄袭鸿蒙?小米12被骂惨了眼看着小米12就要下周三发布了。但似乎,这次小米对12系列的宣传预热不像之前那样热火朝天?这都周五了,有价值的信息还是很有限。就连这个宣传图也感觉平平无奇。这……
创约锤子简史2007年是中国台式电脑的分水岭福利补贴式建议胡锡进这么棒为什么不再多干几年?5G魅力几何?看看上汽把5GL4智能重卡玩得多溜就知道了有什么可以替代notepad的软件?iPhone14系列屏幕采用M12材料!外形大变零售百货生鲜配送扩张医疗健康大发展FFmpegOpenJDK17龙芯LoongArch版本若人类每天凌晨3点入睡,6点起床,白天靠毅力偶尔趴几次,未来曝三星Fold3在韩大受欢迎,Fold2价比老人机,星粉直呼电脑监控软件如何实时监控员工敏感操作?

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利