"""
Python数组:一组相同类型的数据,在内存中是连续存储的
操作:与list操作一样
优点:;(用索引)读速度快
缺点:插入和删除数据慢(无论插入还是删除都要要移动元素,保持连续存储)
"""
# 1. 创建数组
a = []
print(a)
print(type(a))
# 2. 添加元素
# 0(1)和O(n)
a.append(1)
a.append(2)
a.append(3)
print(a)
# 3. 插入元素
# 0(n)
a.insert(2, 99)
print(a)
# 4. 访问元素:用索引访问
# 0(1)
temp = a[2]
print(temp)
# 5. 更新元素
# 先访问,在修改0(1)
a[2] = 88
print(a)
# 6. 删除元素
# 6.1 remove
# 先找值,0(n)
a.remove(88)
print(a)
# 6.2 pop
# 找索引,0(1),但要保持数组,就要往前移,0(n)
a.pop(1)
print(a)
# # 6.3 删除最后一个元素,不需要移动0(1)
a.pop()
print(a)
# 6.4 del
# del a[2]
# 7. 获取数组长度
a = [1, 2, 3]
size = len(a)
print(size)
# 8. 遍历数组
# 0(n)
# 8.1 for i in a
# 不需要索引
for i in a:
print(i)
# 8.2 enumerate
# 需要索引
for index, element in enumerate(a):
print("Index at ", index, "is :", element)
# 8.3 range(0, len(a)),a[i]
# 需要索引和长度
for i in range(0, len(a)):
print("i: ", i, "element", a[i])
# 8. 查找某个元素
# 0(n), 2是元素
index = a.index(2)
# 9. 数组排序
# 0(nlogn)
a = [3, 1, 2]
# 从小到大排序
a.sort()
print(a)
# 从大到小排序
a.sort(reverse=True)
print(a)
结果
C:\Users\Administrator\AppData\Local\Programs\Python\Python38\python.exe D:/code/datastruct/caozuo/demo01_array.py
[]
<class 'list'>
[1, 2, 3]
[1, 2, 99, 3]
99
[1, 2, 88, 3]
[1, 2, 3]
[1, 3]
[1]
3
1
2
3
Index at 0 is : 1
Index at 1 is : 2
Index at 2 is : 3
i: 0 element 1
i: 1 element 2
i: 2 element 3
[1, 2, 3]
[3, 2, 1]
Process finished with exit code 0

2134

被折叠的 条评论
为什么被折叠?



