02 2020 档案

摘要:用递归将问题分解为规模更小的子问题进行求解 例题: 爬楼梯树老师爬楼梯,他可以每次走1级或者2级,输入楼梯的级数,求不同的走法数例如:楼梯一共有3级,他可以每次都走一级,或者第一次走一级,第二次走两级,也可以第一次走两级,第二次走一级,一共3种方法。输入输入包含若干行,每行包含一个正整数N,代表楼梯 阅读全文
posted @ 2020-02-29 15:44 StudyNLP 阅读(778) 评论(0) 推荐(0)
摘要:输入为四则运算表达式,仅由整数、+、-、*、/ 、(、)组成,没有空格,要求求其值。假设运算符结果都是整数。"/"结果也是整数解题思想:因为四则运算有优先级,所以在设计递归的时候,需要注意。这里设计为:表达式-项-因子-带括号表达式或整数,这里只是给了个名称上的定义,可以不用具体的纠结什么是项、什么 阅读全文
posted @ 2020-02-26 10:40 StudyNLP 阅读(880) 评论(0) 推荐(0)
摘要:用递归解决递归形式的问题例题:逆波兰表达式逆波兰表达式是一种把运算符前置的算术表达式(其实一般教科书上称这种表达式为波兰表达式) ,例如普通的表达式2 + 3的逆波兰表示法为+ 2 3。逆波兰表达式的优点是运算符之间不必有优先级关系,也不必用括号改变运算次序,例如(2 + 3) * 4的逆波兰表示法 阅读全文
posted @ 2020-02-22 15:21 StudyNLP 阅读(1002) 评论(0) 推荐(0)
摘要:用递归替代多重循环n皇后问题:输入整数n, 要求n个国际象棋的皇后,摆在n*n的棋盘上,互相不能攻击,输出全部方案。八皇后问题:八重循环。n皇后,n重循环? N皇后问题输入一个正整数N,则程序输出N皇后问题的全部摆法。输出结果里的每一行都代表一种摆法。行里的第i个数字如果是n,就代表第i行的皇后应该 阅读全文
posted @ 2020-02-19 13:55 StudyNLP 阅读(430) 评论(0) 推荐(0)
摘要:汉诺塔问题(Hanoi):古代有一个梵塔,塔内有三个座A、B、C,A座上有64个盘子,盘子大小不等,大的在下,小的在上(如图)。有一个和尚想把这64个盘子从A座移到C座,但每次只能允许移动一个盘子,并且在移动过程中,3个座上的盘子始终保持大盘在下,小盘在上。在移动过程中可以利用B座,要求输出移动的步 阅读全文
posted @ 2020-02-16 14:02 StudyNLP 阅读(523) 评论(0) 推荐(0)
摘要:递归的基本概念 一个函数调用其自身,就是递归 求n!的递归函数 通过函数递归的方式实现求函数的阶乘。 Python代码如下: #求阶乘 def Factorial(n): if (n == 1): return 1 else: return n * Factorial(n-1) def main 阅读全文
posted @ 2020-02-12 15:15 StudyNLP 阅读(1775) 评论(0) 推荐(0)
摘要:– 有一个由按钮组成的矩阵, 其中每行有6个按钮, 共5行– 每个按钮的位置上有一盏灯– 当按下一个按钮后, 该按钮以及周围位置(上边, 下边, 左边, 右边)的灯都会改变状态 – 如果灯原来是点亮的, 就会被熄灭 – 如果灯原来是熄灭的, 则会被点亮• 在矩阵角上的按钮改变3盏灯的状态• 在矩阵边 阅读全文
posted @ 2020-02-09 18:08 StudyNLP 阅读(328) 评论(0) 推荐(0)
摘要:有12枚硬币。其中有11枚真币和1枚假币。假币和真币重量不同,但不知道假币比真币轻还是重。现在,用一架天平称了这些币三次,告诉你称的结果,请你找出假币并且确定假币是轻是重(数据保证一定能找出来)。 输入:第一行是测试数据组数。每组数据有三行,每行表示一次称量的结果。银币标号为A-L。每次称量的结果用 阅读全文
posted @ 2020-02-05 14:51 StudyNLP 阅读(434) 评论(0) 推荐(0)
摘要:题目:生理周期 人有体力、情商、智商的高峰日子,它们分别每隔23天、28天和33天出现一次。对于每个人,我们想知道何时三个高峰落在同一天。给定三个高峰出现的日子p,e和i(不一定是第一次高峰出现的日子),再给定另一个指定的日子d,你的任务是输出日子d之后,下一次三个高峰落在同一天的日子(用距离d的天 阅读全文
posted @ 2020-02-01 18:33 StudyNLP 阅读(234) 评论(0) 推荐(0)