1. 创建数组
a=[]
  1. 添加元素
#添加操作
a.append(1)
a.append(2)
a.append(3)
print(a) #[1,2,3]
'''append方法是在末尾添加元素 
时间复杂度一般是O(1)
如果存储空间中当前元素末尾正好被别的数据占了的话,那么append()会先开辟一个新的空间,然后将之前数组元素导过去,再执行添加操作,此时的时间复杂度是O(N)
'''
#插入操作 在所选索引前插入一个值 O(N)
a.insert(2,99) #第一个参数是索引 第二个参数是插入的值 
print(a) #[1,2,99,3]
  1. 访问元素
#直接查索引 O(1)
temp=a[2]
print(temp)# 99
  1. 更新元素
#O(1)
a[2]=88
print(a) #[1,2,88,3]
  1. 删除元素
#3种方法
#第一个remove()  O(N)
a.remove(88)
print(a) #[1,2,3]
#pop() 分里面是否有索引数值
a.pop(1)  
print(a) #[1,3]  O(N) 因为需要先遍历再删
a.pop()
print(a) #[1]  O(1) 无索引默认删最后一个元素
  1. 获取长度
a=[1,2,3]
size=len(a)
print(size) #3
  1. 遍历数组
#3种方法 O(N)
#第一种遍历数组输出值
for i in a:
    print(i)
#第二种调用 enumerate()函数 直接得到索引值和数组值
for index,element in enumerate(a):
    print(index,element)
#range()函数 结果和第二种一样 得到索引和当前对应数值
for i in range(0,len(a)):
    print(i,a[i])
  1. 查找某个元素
#index()函数  O(N)
index=a.index(2) #2是元素 返回这个数值的对应索引数
print(index)  #1
  1. 数组排序
#sort()函数 默认升序排列 O(NlogN)
a=[3,1,2]
a.sort()
print(a) #[1,2,3]
a.sort(reverse=True)
print(a) #