zoukankan      html  css  js  c++  java
  • 递归

    什么叫递归?

           有一个故事大家都听过;''从前有座山,山上有座庙,庙里有个老和尚和一个小和尚,老和尚给小和尚讲故事,讲的故事是‘:‘’从前有座山,山上有座庙,庙里有个老和尚和一个小和尚,老和尚给小和尚讲故事,讲的故事是..........‘’。

    如何用程序解决一下这个程序呢?

    def story():
    # print("从前有座山,山上有座庙,庙里有个老和尚和一个小和尚,老和尚给小和尚讲故事,讲的故事是‘")
    #
    # while True:
    # story()

    用循环?哇哇哇!死循环!电脑卡住了。

    当然还有别的方法:

    # def story():
    # #递归函数,在一个函数内调用自己
    # #最大递归层数做了一个限制:997
    # print("从前有座山,山上有座庙,庙里有个老和尚和一个小和尚,老和尚给小和尚讲故事,讲的故事是")
    # story()
    # print('123')

    # story()

    #python递归最大层数限制 997
    #最大层数限制是python默认的,可以做修改
    #但是我们不建议你修改

    地柜中的二分法:

    二分查找算法
    #算法:计算的方法
    #有序的递增列表
    l = [2,3,5,10,15,16,18,22,26]
    def find(l,aim): #l:列表 aim:要找的
    mid = len(l)//2 #计算中点
    if l[mid] > aim: #判断中间位置的值和目标值的大小关系
    new_l = l[:mid] #[16,18] = [16,18,22,26][:mid]
    return find(new_l,aim)
    elif l[mid] < aim:#判断中间位置的值和目标值的大小关系
    new_l = l[mid+1:]
    return find(new_l,aim)
    else:
    return l[mid]
    # print(find(l,16))

  • 相关阅读:
    Web API中的消息处理程序(Message Handler)
    Web API中的模型验证
    autoconf配置的项目,编译debug版本
    gcc编译工具生成动态库和静态库之一----介绍
    VMware中四种网络连接模式的区别
    vmware虚拟机三种网络模式的区别
    code block自动生成makefile
    centos7 安装 codeblock(rpm)
    利用cbmakegen导出Code::blocks的Makefile
    C/C++程序CPU问题分析
  • 原文地址:https://www.cnblogs.com/kxllong/p/7265089.html
Copyright © 2011-2022 走看看