数据结构与算法之 01 数组
数组是一种使用连续内存存储同类型数据的一种数据组织方式。
基于内存连续和类型相同使得访问数组元素时能通过下标的方式以 O(1)的时间复杂度进行访问。
事实上,这个访问是根据下标“动态地”计算(相比较,链表存储则静态的存储了前后节点的内存地址)出了第i个元素的地址,再取地址值对应内存来访问的。
从中看出,对数组删除操作时就会涉及到元素空间的移动,因为是为了保持数组内存空间连续。同样地,如果数组支持动态扩容,那么就要进行元素迁移到扩容后的新区域。
因此,在使用数组时的约定就是:
- 最开始尽量确定数组大小,避免不必要的扩容操作。
浙公网安备 33010602011771号