算法学习第一天
以下均为本人自学所得,大多为通俗易懂的语言,有何问题欢迎大家评论指点,谢谢~
一、时间复杂度
1、常数操作时间复杂度:固定的时间,与数据量无关;(数组的查找)
2、非常数操作时间复杂度:链表的查找;
3、加减乘除运算是场数量级的,但是位运算比加减乘除要快;
4、时间复杂度只看最高次项,忽略系数;
5、时间复杂度都为O(n)时,看常数项;注:无法用理论值分析!常数项可为加减乘除操作与位运算操作,要拿程序实际去跑,才能确定何为优;
总结:算法的好坏先看时间复杂度,在分析不用数据样本想的实际运行时间;