什么是数组
什么是数组??
数组是有限个相同类型的变量所组成的有序集合
数组的存储特点??
数组在内存中是顺序存储
关于数组插入元素详解
在python中,数组的插入可以用insert()函数或者append()函数实现,所以数组中元素的插入到底是啥原理呢?
关于数组中间插入元素详解
原理:由于数组的每个元素都有其对应的固定下标,所以插入元素,我们就得将插入位置后面的元素向后移动,再讲要插入的元素放到对应的数组位置上
插入元素代码实现
class MyArray:def __init__(self, capacity):self.array = [None] * capacity # 数组容量self.size = 0 # 数组实例元素数量def insert_1(self, index, element):# 判断下标是否超过范围if index < 0 or index >= self.size:raise Exception("超过范围了!")# 从右向左循环,逐个元素向右挪一位for i in range(self.size-1, 1, -1):self.array[i+1] = self.array[i]self.array[index] = elementself.size += 1def output(self):for i in range(self.size):print(self.array[i])if __name__ == '__main__':array = MyArray(4)array.insert_1(0, 11)array.insert_1(1, 12)array.insert_1(2, 12)array.insert_1(3, 12)array.output()
关于数组删除元素详解
在python中 数组的删除可用函数 remove(),那么关于数组的删除原理是啥呢?
关于数组删除元素详解
原理:由于数组的每个元素都有其对应的固定下标,所以删除元素,我们就得将删除位置后面的元素向前移动
数组的优势和劣势
优势数组拥有高效的访问能力
劣势数组的插入和删除都会导致移动大量元素,时间复杂度是O(n)
总的来说:数组适合读操作多,写操作少的场景
