数据结构学习——01

程序=数据结构+算法
数据结构:数据的组织形式
算法:解决实际问题的方法
总结:算法是为了解决实际问题而设计的,数据结构是算法需要处理的问题载体。

算法的五大特性:
输入:算法具有0个或多个输入
输出:算法至少有1个或者多个输出
有穷性:算法不会无限循环,并且每一步可以在可接受的时间内完成
可行性:算法每一步都是可行的
确定性:算法每一步都有确定的含义,不会出现多种含义

算法的时间复杂度:
算法分析过程中,语句总的执行次数T(n)是关于问题规模n的函数。
T(n)=O(f(n)),T代表代码总运行的时间,n代表数据的规模大小,f(n)是每行代码执行的次数总和,O表示代码运行时间T(n)和f(n)表达式成正比。

常见的时间复杂度
O(1) 常数阶
O(logn) 对数阶
O(n) 线性阶
O(nlogn) nlogn阶
O(n^2) 平方阶
O(2^n) 指数阶

在这里插入图片描述

时间复杂度分析:
1、只关注循环执行次数最多的一段代码,忽略掉公式中的常量、低阶、系数,只需要记录一个最大阶的量级就可以了。
2、加法法则:总复杂度等于量级最大的那段代码的复杂度。

发布了50 篇原创文章 · 获赞 9 · 访问量 2106

猜你喜欢

转载自blog.csdn.net/weixin_42118531/article/details/102910731