【DS】1.2
top-iron man
算法
效率度量
- 时间T=T(n)
1、顺序忽略
2、只选一个基本操作分析
3、多层嵌套只考虑最深的循环循环了几次
test1:
test2:
- 空间
原地工作:算法所需内存空间为常量
空间复杂度=递归调用的深度 - 练习
1、算法定义是问题求解步骤的描述,五个基本特性是必要条件不是定义;
2、时间复杂度表明该算法的执行时间与O( )成正比;
3、while中有n*2这种 可以看一下是不是log2n;【i=i*2,则2t<=n,t<=log2n】
4、升序列表合并:两两比较表中的元素,每比较一次,确定一个元素的链接位置(取较小元元素,头插法;当一个链表比较结束后,直接把另一个剩下的元素插入;最坏情况:两个链表依次比较 用max;
5、
6、前n项和的时间复杂度是n的1/2次方吗
7、没懂
8、
总结
1、循环主体中的变量参与循环条件的判断
2、循环主体中的变量与循环条件无关
只关注主体语句执行
1、递归:公式递推,比如乘法拉~!
2、非递归:累计次数