数据结构——1、数组

1.1.1 *数组*

1.1.1.1 *内存中的数组结构*

数组是:有限个相同类型的变量所组成的有序集合,数组中的每一个变量被称为元素

数组的一个特点:在内存中顺序存储

数组在内存中是如何进行顺序存储的

内存是由一个一个连续的内存单元组成的,每一个内存单元有自己的地址,数组中的每一个元素,都存储在内存单元中,并且元素之间紧密排列

不同类型的数组,数组中每个元素所占内存单元的个数不相同

imgimg

数组读取元素和更新元素的时间复杂度都是O(1)

数组插入元素的操作包括3种情况:尾部插入;中间插入;超范围插入;

1.1.1.2 *插入元素*

1.1.1.2.1 *尾部插入*

对于一个数组,内部存储元素如下:

img

对该数组的尾部,插入一个元素

img

1.1.1.2.2 *中间插入*

imgimg

1.1.1.2.3 *超范围插入*

imgimg

1.1.1.3 *删除元素*

img

如果删除元素不涉及到元素的排序,还有一种方式,将数组尾部的元素直接替换到要删除的元素,即如果要删除的元素是2,可以把最后一个元素复制到元素2所在的位置,然后删除最后一个元素。时间复杂度为O(1)

img

1.1.1.4 *时间复杂度*

数组中读取元素、更新元素,时间复杂度都是0(1),

插入元素,删除元素,均涉及到元素的移动,时间复杂度是0(n)

如果不涉及到元素的排序,删除元素的时间复杂度可降为O(1)

posted on 2021-09-24 09:54  夜萤火虫和你  阅读(170)  评论(0编辑  收藏  举报

导航