【数据结构与算法分析——C语言描述】第一章总结 引论
2024-08-22 03:26:21
这一章主要复习了一些数学知识,像指数、对数、模运算、级数公式;还有2种证明方法,归纳假设法和反证法。所幸以前学过,重新拾捡起来也比较轻松。
简要地复习了递归,提出了编写递归例程的四条基本法则:
基准情形。必须总有些基准情形。它无需递归就能解出。
不断推进。对于那些需要递归求解的情形,每一次递归调用都必须要使求解状况朝接近基准情形的方向推进。
设计法则。假设所有的递归调用都能运行。
合成效益法则。在求解一个问题的同一实例时,切勿在不同的递归调用中做重复性的工作。(譬如斐波那契数列的递归使用 Fib(n) = Fib(n-1)+Fib(n-2) 就造成了重复性的多次计算,计算Fib(n)时第一次调用Fib(n-1)内部计算了Fib(n-2)并抛弃了这一信息,接着又计算了Fib(n-2)。被抛弃的信息递归地结合起来造成了巨大的运行时间,算法复杂度达到了指数级)
最新文章
- Atitit 动态按钮图片背景颜色与文字组合解决方案
- GridView 使用方法总结
- P6 EPPM 安装与配置指南 16 R1 2016.4
- Http协议简单学习笔记
- php常用函数集锦[备份用的]
- Spring与Struts2整合VS Spring与Spring MVC整合
- mysql排序,可以对统计的数据进行排序
- css图片磨砂化
- 尺取法 poj3061 poj3320
- java的linux命令
- 程序员50题(JS版本)(六)
- error: Microsoft Visual C++ 14.0 is required. Get it with ";Microsoft Visual C++ Build Tools";: http://landinghub.visualstudio.com/visual-cpp-build-tools
- C# 之 提高WebService性能大数据量网络传输处理
- Kernel 3.0.8 内存管理函数【转】
- axios介绍
- jsp里面不能使用${pageContext.request.contextPath}解决方案
- SQL SERVER_Restore(version)
- mianshi
- Inline函数使用注意事项
- 微信小程序 - 更改radio和checkbox选中样式