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))

  • 相关阅读:
    提醒你一下, 你真的很垃圾, 创建一个maven 的web 项目都忘记了
    java web 项目中基础技术
    java 构造函数
    分布式简介
    RabbitMq 深入了解
    JS正则表达式验证数字非常全
    mui返回上个页面并刷新数据
    Windows环境下IOS APP打包上传AppStore详细流程
    crontab 详细用法 定时任务
    Linux epoll 源码注释
  • 原文地址:https://www.cnblogs.com/kxllong/p/7265089.html
Copyright © 2011-2022 走看看