二分法算法讲解,配二分python 代码实现及其运行结果。 |
您所在的位置:网站首页 › 二分查找递归算法代码 › 二分法算法讲解,配二分python 代码实现及其运行结果。 |
半片云烟,半片山河。半分江湖,半分天地。 系列文章目录提示:算法之二分法的写法,本篇文章主要以二分法写作为主,使用的主语言是python。 文章目录 系列文章目录一、二分法算法原理是什么?1.二分法算法介绍2.二分法图解简介 二、 二分法代码的基本实现方法1.二分法算法实现方法(1) 一、二分法算法原理是什么? 1.二分法算法介绍 二分查找是一种算法,其输入一个有序的元素列表。如果要查找的元素包含再列表中,二分查找返回其位置;否则返回NULL。 给一组数列列表,给定一个想要查找的值,每一次查找取中间值做比较,如何测试值比中间值的值高则取上半区,如何测试值比中间值的值低则取下半区。每次一般的取值方式,快速的查找到值的所在位置。 二分法算法的时间复杂度是log2(n),因为每次都是折中所以时间复杂度是一半。! 2.二分法图解简介在这里插入图片描述: 代码如下(示例): my_list = [45,55,65,35,85] #定义函数 def binary_search(list,item): #len()函数会得到数列的所含的数字具体数值。 # 二我们计算出来数字位置下表从0开始所以-1 high = len(list)-1 low = 0 while high >= low: #算取中间的值,奇数向下取整 mid =int(low+(high-low)/2) #猜的值是中间值。 guess = list[mid] if guess == item: return mid elif guess item:#如果猜的值大于给定的值 high = mid-1 return None print(binary_search(my_list,65)) print(binary_search(my_list,22))运行结果: |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |