c语言_递归算法puterProgramming第八章递归算法132基本概念基于回溯策略的递归基于分治策略的递归从前有座山,山上有座庙,庙里有一个老和尚和一个小和尚,老和尚正在给小和尚讲故事。讲的是什么故事呢?他说,从前……Recursion-See"Recursion"."Inordertounderstandrecursion,onemustfirstunderstandrecursion."C语言允许嵌套地调用函数,也就是说,在调用一个函数的过程中,又去调用另一个函数。函数的嵌套调用voidmain(){…study_english();…}voidstudy_english(){reading();listening();writing()}voidlistening(){………}函数的嵌套调用有一个特例,即递归调用,也就是说,在调用一个函数的过程中,又出现了直接或间接地去调用该函数本身。voidtell_story(){intold_monk,young_monk;tell_story(); //tell_story函数的递归调用}函数的递归调用?voidtell_story(){staticintold_monk,young_monk;old_monk=old_monk+1;//年龄大了一岁young_monk=young_monk+1;if(old_monk<=60) //递归形式tell_story();elseprintf("对不起,已退休!");//递归边界}在语法上(简单)递归即为普通的函数调用。在算法上(难)如何找到递归形式?如何找到递归边界?如何编写递归程序?递归算法的类型递归算法可以分为两种类型:基于分治策略的递归算法;基于回溯策略的递归算法。
c语言 递归算法 来自淘豆网www.taodocs.com转载请标明出处.