算法专题
时间复杂度 数据结构的使用 经典算法思想 树的概念与操作 搜索的实践与应用 动态规划(一) 综合训练
数据结构 集合、列表和数组区分数组操作
1、读取元素
(1)方式:访问索引(下标)来读取,索引一般从0开始。
(2)过程:先在内存中为数组申请一段连续的空间,并且会记下索引为0处的内存地址,之后由记下的索引为0处内存地址 + 索引值 = 目标元素的地址,即找到目标元素。
(3)时间复杂度:O(1)
2、查找元素
(1)过程:从数组开头逐步向后查找。如果数组中的某个元素为目标元素,则停止查找;否则继续搜索直到到达数组的末尾。
(2)时间复杂度:O(N),N 为数组的长度。
3、插入元素
(1)末尾插入
(2)首尾间插入用链表省时
4、删除元素
(1)删除掉数组中的某个元素后,数组中会留下空缺的位置,而数组中的元素在内存中是连续的,这就使得后面的元素需对该位置进行 填补 操作。
(2)时间复杂度:O(N),N 为数组的长度。
注:只考虑最坏情况的时间复杂度
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did238176