递归和死循环

在计算机里面,递归永远要给出一个结束条件,比如递归的思维计算阶乘,即N!=1 x 2 x 3 x 4 ……x N,可以用N!=N x (N-1)!来递归计算,但是有一个条件就是0!=1,也就是说,最后遇到0,计算就结束了。

在生活中,“从前有座山,山里有个庙……”这个故事我们是把它当作一个玩笑来讲,并不当真,不过,我们很多人在做事情上,其实不断重复着这样看似递归,实则是死循环的傻事,但自己从来不觉得。比如说,在谈恋爱时,甚至在婚姻中,一方总是说,再给我一次机会,另一方无论上多少次当,还真就给了,这就是没有结束条件的递归,最后是个死循环。

中国有句话叫做“抱薪救火,薪不尽,火不灭”,讲的就是这个道理。这个年轻人最后是如何走出死循环的呢?债主气不过把他送进大牢,半年后他出来无人肯借他钱让他赌,也没有人养活他,只好做一份收入不高的工作糊口。也就是说,薪尽了,火也就灭了。

1. 上了很多年学,却无法感知教育的用途。

过去贫困家庭的孩子没有机会上学,以至于大家认为他们穷困是没有给予平等的机会。今天世界上大部分国家都有义务教育,但是很多时候教育并没有起到什么效果,是因为来自贫困家庭的父母和孩子却无法体会教育的用途,这是他们和终身受教育者一个很大的区别。

家长逼孩子读书,只是模模糊糊地觉得不读书不好,但其实自己也不曾体会读书有什么用。结果,同样是12年基础教育读完,一些孩子把所学全交回给了老师,然后得到一个读书无用的结论。等他们人到中年,看到周围人因为学识混得比自己好,再去逼着自己的孩子读书,其实依然不懂得读书的目的。

2. 无法获取幸福。

研究表明几代长期贫困的人的思维模式有着惊人的一致性,他们有时付出了很多的劳动,但是体会不出什么是幸福,他们看到的只有一些物质的东西。研究者在印度农村做过一个实验,他们提供了一堆有各种各样彩色图片的杂志,让家长从中剪出一些图片,然后拼贴在一起,以表现他们对生活的想法,以及教育能够给他们的孩子带来什么。结果,家长们完成的拼贴画大同小异:各种宫殿、漂亮的汽车和密密麻麻的黄金钻石。来自贫穷家庭的家长们,仅仅将教育看成一种让自己和孩子获取大量财富的手段,而不是更高层次的东西。

  对于计算机来讲,递归是一个好的方法,因为它可以通过同一种算法不断地简单重复,解决大问题,但是,递归一定要有结束条件,否则就成了死循环。(吴军的硅谷方法论)

你可能感兴趣的:(递归和死循环)