Python数组



"""
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


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值