zoukankan      html  css  js  c++  java
  • python基础-递归

    1.递归调用:在一个函数调用的过程中,直接或间接又调用了自身,就是递归调用

    2.递归必备的两个阶段:1.递推  2.回溯

    总结:#总结递归的使用:

              1. 必须有一个明确的结束条件2. 每次进入更深一层递归时,问题规模相比上次递归都应有所减少

              3. 递归效率不高,递归层次过多会导致栈溢出(在计算机中,函数调用是通过栈(stack)这种数据结构

                  实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧。由于栈的大

                  小不是无限的,所以,递归调用的次数过多,会导致栈溢出)

    3.匿名函数:fun=lambda x,y,z=1:x+y+z

                      #有名函数与匿名函数的对比

                       有名函数:循环使用,保存了名字,通过名字就可以重复引用函数功能

                      匿名函数:一次性使用,随时随时定义

              应用:max,min,sorted,map,reduce,filter

                     a={'aa':1000000,'bb':9999999,'cc':10111111}

             print(max(a,key=lambda k:a[k]))

             print(min(a,key=lambda k:a[k]))

    4.内置函数:

        enumerate()将值和索引达成元素的迭代器

        eval()将字符串中的代码提取出来,exec也是此功能。只是没有返回值

        pow():pow(2,3,3)#(2**3)%3

        round(num)四舍五入

  • 相关阅读:
    [CF528D] Fuzzy Search
    [WC2013] 糖果公园
    [APIO2011] 方格染色
    [CTSC2017] 吉夫特
    [HNOI/AHOI2018] 转盘
    [CTSC2008] 网络管理
    [HAOI2018] 苹果树
    [SCOI2016] 萌萌哒
    git创建分支并提交项目
    git 常规操作
  • 原文地址:https://www.cnblogs.com/lixiaoting/p/12027529.html
Copyright © 2011-2022 走看看