讲义一-递归的消除(共6页).doc

上传人:晟*** 文档编号:8925023 上传时间:2021-11-30 格式:DOC 页数:6 大小:85.50KB
下载 相关 举报
讲义一-递归的消除(共6页).doc_第1页
第1页 / 共6页
讲义一-递归的消除(共6页).doc_第2页
第2页 / 共6页
讲义一-递归的消除(共6页).doc_第3页
第3页 / 共6页
讲义一-递归的消除(共6页).doc_第4页
第4页 / 共6页
讲义一-递归的消除(共6页).doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

精选优质文档-倾情为你奉上递归算法具有两个特性:(1) 递归算法是一种分而治之、把复杂问题分解为简单问题的求解问题方法,对求解某些复杂问题,递归算法分析方法是有效的。(2)递归算法的时间效率差,其时间效率低。为此,对求解某些问题时,我们希望用递归算法分析问题,用非递归算法求解具体问题;消除递归原因:其一:有利于提高算法时空性能,因为递归执行时需要系统提供隐式栈实现递归,效率低,费时。其二:无应用递归语句的语言设施环境条件,有些计算机语言不支持递归功能,如FORTRAN、C语言中无递归机制 。 其三,递归算法是一次执行完,这在处理有些问题时不合适,也存在一个把递归算法转化为非递归算法的需求。理解递归机制,是掌握递归程序技能必要前提。消除递归要基于对问题的分析,常用的有两类消除递归方法。一类是简单递归问题的转换,对于尾递归和单向递归的算法,可用循环结构的算法替代。另一类是基于栈的方式,即将递归中隐含的栈机制转化为由用户直接控制的明显的栈。利用堆栈保存参数,由于堆栈的后进先出特性吻合递归算法的执行过程,因而可以用非递归算法替代递归算法。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 实用文档资料库 > 公文范文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。