数据结构学习笔记01
作者:互联网
看邓俊辉老师的数据结构课程的笔记
一,计算
- hailstone(是否有穷尚无定论) 好算法——最强调“效率”,其次是可读性,健壮性,正确性
二,计算模型
1.图灵机(不懂怎样作为一个计算模型来使用)
- tape(均匀划分为单元格)
- 有限的alphabet
- head
- state
- transition function(q,c;d,L/R,p)
2.RAM(没听懂)
三,渐进复杂度
- 看主流和长远
- 大O记号:上界
- 大Omega记号:下界
- θ记号:以上二者之间
高效解:
- 常数 O(1)
- 对数 O(logcn)
有效解:
- 多项式 O(nc ): 特殊 线性O(n)
- 幂次的复杂度组足够令人满意!
难解(不存在有效算法)
- 指数复杂度 O(2n)
- 例如 2-subset 问题,无法改进成一个多项式复杂度的算法
四,复杂度分析
- 级数(这个没太明白)
- 封底估算
五,迭代与递归
- 减而治之(例如sum)
- 复杂度分析:递归跟踪分析,检查每个递归,累计相加的时间;递推方程分析
- 分而治之(二分求和)
六,动态规划
- 递归是自顶向下的,而迭代是自底向上的。
- 数组循环移位
标签:01,记号,递归,复杂度,笔记,算法,数据结构,迭代 来源: https://blog.csdn.net/major_in_data_/article/details/122406227