本篇文章为算法的理论基础,可能会有些枯燥。适合小白,可以对算法有大概了解。
(本人也是小白,欢迎大佬指正~嘻嘻嘻)
算法要素和时间、空间复杂度
1. 算法的要素
算法设计要同时结合数据结构的设计,简单来说,数据结构的设计就是选择存储方式,因为不同的数据结构的设计将导致算法的差异很大。
算法由操作、控制结构和数据结构三要素组成。
1.1操作
(1)算术运算
(2)关系比较
(3)逻辑运算
(4)数据传送:输入,输出,复制等等
1.2 控制结构
顺序结构 + 选择结构 + 循环结构
1.3 数据结构
算法操作的对象是数据,数据间的逻辑关系、数据的储存方式及处理方式就是数据结构。
2. 算法的时间复杂度
2.1 和算法执行时间相关的因素
(1)问题中数据储存的数据结构
(2)算法采用的数学模型
(3)算法设计的策略
(4)问题的规模
(5)实现算法的程序设计语言
(6)编译算法产生的机器代