测试面试题(二) python基本算法-二分法

       现在对测试的要求也越来越高了,特别是面试一些有竞争性的岗位时,同时对测试人员的代码水平也有一定的要求,所以掌握一定的代码能力是给自己的一个大大的加分项。

对于很多基础不好的同学要自学会一门语言,是非常费时费力的,所以这里我建议各位从简单的入手,掌握一些基础常用的东西,然后慢慢花时间去深入,好~  开始测试面试中经常会问到的问题--二分法,有时可能不会直接问你二分法的原理,比如说问你:在数据量非常多的时候,怎么快速找到你要找的那个数据等等。

二分法说起来也很简单,简单说就是'掐头去尾取中间' ,每次查找对比中间的值,然后去除掉一半的数据。一般面试中只会要你讲一下基本实现的方法原理及为什么使用二分法,使用二分法能大大减少查找次数,举个例子:

在1-100中如何查找到一个数?

比较笨的方法:

n=input('输入查找的数字')#58

for i in range(101):

n==i

print('已找到')

这样的话你要一个个遍历查找,如果数据很大,显然不合理

所以要用二分法(注:二分法前提数必须是有序的):

如下为二分法代码(注释的比较详细了)

当然也可以用递归的方法(这个后面递归的时候总结,先放下代码):


好了,基本稍微有点基础的都能看懂,内容说的比较详细,大家一起努力吧~ 下次总结一下冒泡排序法,也是面试中经常问到的,基本考察代码能力都会涉及~~

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 所有知识点已整理成app app下载地址 J2EE 部分: 1.Switch能否用string做参数? 在 Jav...
    侯蛋蛋_阅读 7,290评论 1 4
  • Python语言特性 1 Python的函数参数传递 看两个如下例子,分析运行结果: 代码一: a = 1 def...
    伊森H阅读 8,189评论 0 15
  • 如何查找 我们先从二分查找法开始说起,生活中,如果我们摆放物品是按照一定规律的话,那么查找起来就会非常快,如果我们...
    李威威阅读 3,907评论 0 2
  • 中午她只吃了一碗白米饭。回家路上,感觉她不太对劲。睡了一路到家,我和她爸轮流,在楼下车里陪她睡到三点半。量体温,确...
    良良8209阅读 1,183评论 0 0
  • 占卜是问吉凶、求结果,但我们做事要凭良心。 以正心行事,何须占卜。 正所谓大丈夫有所为,有所不为。 明知结果不好,...
    虚志山人阅读 4,489评论 0 0