热门标签 | HotTags
当前位置:  开发笔记 > 开发工具 > 正文

郁闷于递归之中!请高手一语道破,

我是个学生,接触递归程序时觉得就是摸不透,调用自己一次还能理解,比如求介乘。可是像汉洛嗒那样调用两次就是不明白,让我自己写就是写出来了,估计也是背上了程序。
我是个学生,接触递归程序时觉得就是摸不透,调用自己一次还能理解,比如求介乘。 可是像汉洛嗒那样调用两次就是不明白,让我自己写就是写出来了,估计也是背上了程序。

33 个解决方案

#1


强烈郁闷,,,,

#2


多看些这方面的资料,多思考,勤实践,慢慢就会领悟了.

#3


递归的思想大概是这样的 :
把问题分成N个步骤,可以有两种思维去解决问题,一是先把问题分做1,2到N两个部分,首先去解决步骤1,从问题的开始出发,然后把步骤2当作步骤1 ,依次类推,做到第N个步骤1的时候,问题就完成了。
二是把问题分成1到N-1,和N两个部分,先做步骤N,从问题的结果出发,然后步骤N-1,就成了1到N-1的最后一个步骤了,也就是问题的结果,按上序方法,依次类推,做到第N个最后一个步骤的时候,问题也就解决了:)

#4


多看小学数学奥林匹克的教学资料吧,hehe

#5


能够理解,是不是有些东西只可意会不可言传,难者不会,会者不难!书本怎么把递归解释的那么简单,

#6


简单来说,第归就是调用自己,并且要有出口,不能无限次调用。

#7


明白楼上的意思,可是我明白了,二叉树的遍历,那么我还是觉得如果给我一个三叉树我还是不能很轻松的写出程序

#8


程序的边界有时很容易出错,到底做到n还是n-1还是n+1, 觉得很搞人

#9


看来的我的智力低于75了,不能再学计算机了

#10


我认为你有这样勤学的精神,没有什么可以永远难倒你的!
不要气馁,加油!

#11


递归就是递归,就这么简单!

#12


涉及到堆栈调用和溢出,所以首先需要理解堆栈。
学过数列吗?第归数列是什么样的?想一下就明白了。

#13


应该说,没有别的办法,你自己努力吧

看看 visual  c++6.0 技术内幕 

不错的 一看就懂

关键你得动手做!!

#14


其实递归不用你自己搞得很明白就能用了,那是个很简单的思想
你只要知道他是在调用自己,并且给出一个结束条件就行了

#15


同意楼上的观点,具体点就是先假设解决在假设,等到没有问题了,就回去了,你要做的只是重复而已,搞清N与N-1就行了.

#16


不妨用点苯方法,自己一步步追踪程序的每一步,等明白了程序到底怎样执行后,就不用考虑那么多了。

#17


递归就是倒推,从结果一步一步的找到开始的路径

#18


递归是削减问题规模的解决策略,递归有两大步骤:
1.问题规模的削减.
  如求阶乘,原来问题规模为N,由fun(N) = N*fun(N-1);将问题规模削减到了N-1.
2.确定递归出口.
  无论问题规模如何削减,如果没有最终的出口,只能陷入死循环.
  在阶乘问题中递归出口为 if ( n== 0 ) return 1;

并非所有问题都要勉强用递归解决,只有对那些本身就有递归意思的问题才要使用递归.

#19


递归就是 笼统的说就是有相似性!这是递归特点。
还要有出口!

#20


递归的思想大概是这样的 :
把问题分成N个步骤,可以有两种思维去解决问题,一是先把问题分做1,2到N两个部分,首先去解决步骤1,从问题的开始出发,然后把步骤2当作步骤1 ,依次类推,做到第N个步骤1的时候,问题就完成了。
二是把问题分成1到N-1,和N两个部分,先做步骤N,从问题的结果出发,然后步骤N-1,就成了1到N-1的最后一个步骤了,也就是问题的结果,按上序方法,依次类推,做到第N个最后一个步骤的时候,问题也就解决了:)

#21


上面的兄弟不要这样去说别人,你们刚学的时候我想也差不了多少,
这位兄弟你多去看几遍递归,你一暄会懂的,

#22


唉,我也是啊,在实际生活中碰到问题时,我还是会本能地用普通办法去解决,只是在今后想了才会考虑一下递归的方法。。。。。。

#23


mark

#24


递归有点像递推,不过是让计算机去推.相信你在中学学过数学归纳法的吧.
递归的最终返回处(相当于归纳法应用时的a1项)必须要指定,其余的推理就留给计算机去作吧.

#25


递归就好象堆栈取出元素那样,一级一级往下进行。

#26


这个己经不太重要!了!
知道为什么就有了!

#27


把所有的函数调用全画出来你到着看这样就好懂了。

#28


还是多实践,多花点时间就懂了。

#29


递归就是对大问题分解成小问题(大规模问题分解成小规模问题)的模拟,首先要在大问题和小问题之间存在着递归的关系,另外还要知道递归的工作方式。

#30


会用差分迭代吗
不管是N还是N-1 一把视为平等 只要数理方程即可

#31


在实际程序设计中,应尽量避免使用递归方式调用,因为递归调用方式会大量消耗内存资源。

#32


其实 递归是用将问题缩小后可以用原来方法解决的一种思路
C PASCAL的递归应该不难理解
如果你看懂了GWBASIC的汉洛嗒递归程序 你应该对递归的看法上升了一个档次
强烈建议你看GWBASIC的汉洛嗒递归程序

#33


把每一步都画出图来,仔细分析每一步,这样多做几道题,就过关了,如果想说好,唯一的办法主是多做题,与智商无关。

推荐阅读
author-avatar
煙feldker_231
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有