zoukankan      html  css  js  c++  java
  • 利用递归的思想,二分法

    二分法(递归实例)

    用递归实现2分查找的算法,以从列表 a =[1,3,4,6,7,8,9,11,15,17,19,21,22,25,29,33,38,69,107] 查找指定的值。

    a = [1,3,4,6,7,8,9,11,15,17,19,21,22,25,29,33,38,69,107]
    def two(start,end,n,d_list):
    	if start<end:
    		mid = (start+end)//2
    		if d_list[mid] >n:
    			two(start,mid,n,d_list)
    		elif d_list[mid] < n:
    			two(mid,end,n, d_list)
    		else:
    			print('找到了',d_list[mid],mid)
    	else:# 假设start=9,end=9, 那d_list[9:9]已经取不到值了,在这种情况下,只能说明,要找的这个值不在这个列表里
    		print('找不到这个数据')
    two(0,len(a),22,a)
    
    总结:
    	在函数的形参位置放一些数据,有利于优化代码量
    
  • 相关阅读:
    css3 省略号
    js一些常用方法
    nth-child使用
    常见表单元素处理
    表单的基本使用
    web基本概念
    PHP数组
    PHP函数
    PHP错误处理
    PHP文件载入
  • 原文地址:https://www.cnblogs.com/xiaobai686/p/12158963.html
Copyright © 2011-2022 走看看