要求: 1.可以进入子菜单 2.可以返回上一级 3.可以从任意一级直接退出 基础版:(主要运用到了字典的读取) 瑕疵版(主要运用了函数的递归调用,使用了global定义局部变量,这样定义的局部变量可以修改全局变量。不到万不得已,不可使用global) 此版本中还要说明一点,虽然data的存储类型为字 ...
分类:
编程语言 时间:
2018-07-28 15:13:48
阅读次数:
195
函数的递归调用 #递归调用是函数嵌套调用的一种特殊形式,函数在调用时,直接或间接调用了自身,就是递归调用 修改递归最大深度 函数递归调用,在调用一个函数的过程中又直接或间接地调用了自己称之为函数的递归调用 本质就是一个重复的过程,必须有两个明确的阶段 #1、回溯:一层一层地递归调用下去,每次进入下一 ...
分类:
其他好文 时间:
2018-07-26 16:10:32
阅读次数:
148
函数递归(函数的递归调用):在调用一个函数的过程中,又直接或间接地调用了该函数本身。 递归必须要有两个明确的阶段: 1,递推:一层一层递归调用下去。 2,回溯:递归必须要有一个明确的结束条件,在满足该条件时结束递推,开始一层一层回溯。 递归的精髓 >>通过不断重复逼近一个最终的结果。 例:用递归推算 ...
分类:
其他好文 时间:
2018-06-30 21:20:53
阅读次数:
151
今天说的是栈与递归的关系,函数的递归调用和普通函数调用是一样的。当程序执行到某个函数时,将这个函数进行入栈操作,在入栈之前,通常需要完成三件事。 1、将所有的实参、返回地址等信息传递给被调函数保存。(输入参数和标记返回值地址) 2、为被调函数的局部变量分配存储区。(分配局部变量地址空间) 3、将控制 ...
分类:
其他好文 时间:
2018-06-21 22:33:37
阅读次数:
177
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApp1 //函数的递归调用 { //F(n)= F(n-1)+F(n-2)... F(1)=... ...
函数的调用满足“后进先出”的原则,也就是说,最后被调用的函数应该第一个返回,函数的递归调用就是一个经典的例子。显然,内存中以“后进先出”方式处理数据的栈段是最适合用于实现函数调用的载体,在编译型程序语言中,函数被调用后,函数的参数,返回地址,寄存器值等数据会被压入栈,待函数体执行完毕,将上述数据弹出 ...
分类:
编程语言 时间:
2018-05-19 13:10:01
阅读次数:
189
递归调用顾名思义即在函数内部调用函数(自己调用自己),通常用它来计算阶乘,累加等 注意: - 必须有最后的默认结果 if n ==0,(不能一直调用自己,如果没有可能会造成死循环) - 递归参数必须向默认的结果收敛 func(n-1) 例子1:计算5的阶乘 #!/usr/bin/env python ...
分类:
编程语言 时间:
2018-05-10 23:18:26
阅读次数:
316
三元表达式 三元表达式仅应用于: 1.条件成立返回一个值 2、条件不成立返回一个值。 若一般函数表达如下 若我们用三元表达式表达: 由此对比 三元表达式 就会比一般函数表达简单 不复杂, 由之前的几行代码 最后3行代码搞定 二、函数的递归: 函数的递归调用,即在函数调用的过程中,又直接或间接的调用了 ...
分类:
其他好文 时间:
2018-04-02 20:17:17
阅读次数:
167
python_day13 1、三元表达式: *条件成立返回一个值 *条件不成立返回一个值 2、递归 函数递归:函数的递归调用,即在函数调用的过程中,又直接或间接调用函数本身; 递归分为两个阶段: 1)回溯: 注意:一定要在满足某种条件结束回溯,否则会无限递归 2)递推 总结: 1、递归一定要有一个明 ...
分类:
编程语言 时间:
2018-04-02 20:13:51
阅读次数:
258
三元表达式 基本的语法格式 比较两个数中的大值 并返回 递归 一、什么是递归 递归函数:函数的递归调用,即在函数调用的过程中,又直接或间接地调用了函数本身 二、递归分为两个阶段,递推和回溯 1.递推:递归函数层层深入的过程是递推的过程 2.回溯:递归函数在满足结束条件后,层层返回结果的过程。 总结: ...
分类:
编程语言 时间:
2018-04-02 20:12:17
阅读次数:
227