摘要: $O(f(n))$: $T(n)=O(f(n))$表示存在常数$C 0$,$n_0 0$,使得当$n n_0$时,总有$T(n)0$,$n_0 0$,使得当$n n_0$时,总有$T(n) =Cf(n)$ $\Theta(f(n))$: $\Theta(f(n))$表示同时有$T(n)=O(f(n) 阅读全文
posted @ 2020-02-12 23:02 Maxwell'Maxwill 阅读(342) 评论(0) 推荐(0) 编辑
摘要: 空间复杂度$S(n)$ 时间复杂度$T(n)$ 与处理的规模相关,所以是$n$的函数。 在分析一般算法的效率时,我们经常关注下面两种复杂度: 1. 最坏情况复杂度$T_{worst}(n)$ (更容易,更常用) 2. 平均复杂度$T_{avg}(n)$ 阅读全文
posted @ 2020-02-12 22:45 Maxwell'Maxwill 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 定义 例:选择排序算法 伪码描述: 抽象的伪码描述。List可以是个链表。Swap可以函数写,也可以宏来写。 阅读全文
posted @ 2020-02-12 22:35 Maxwell'Maxwill 阅读(148) 评论(0) 推荐(0) 编辑
摘要: 数据结构 数据结构是数据对象在计算机中的组织方式。 数据对象必定与一系列加在其上的操作相关联。 完成这些操作所用的方法,就是算法。 逻辑结构 线性结构 非线性结构:树状结构、图结构 存储结构 抽象数据类型ADT 数据类型 数据对象集 数据集合相关联的操作集 抽象 描述数据类型的方法不依赖于具体实现 阅读全文
posted @ 2020-02-12 22:25 Maxwell'Maxwill 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 问题:写程序计算给定多项式在给定点x处的值。 最简单无脑的写法。直接带入$f(x)=a_0+a_1x+a_2x^2+...+a_nx^n$,循环,一项一项地加即可。 使用clock() 常数CLK_TCK:机器始终每秒所走的时钟打点数 测试程序: 运行结果差一个数量级。解决问题方法的效率和算法的巧妙 阅读全文
posted @ 2020-02-12 22:16 Maxwell'Maxwill 阅读(272) 评论(0) 推荐(0) 编辑
摘要: 问题:打印从1~N的数。 循环写法: 当N很大的时候,用递归写法可能直接就爆掉了。递归写法更符合人类的思维方式,代码也更容易懂。但不适合计算机来处理。 阅读全文
posted @ 2020-02-12 21:44 Maxwell'Maxwill 阅读(133) 评论(0) 推荐(0) 编辑