数组array
python中的列表list
可以用作数组,通过索引访问元素的复杂度是O(1)
a = []
创建空列表/数组
b = [1,2,3,4,5,6]
b[-1]
获取列表最后一个值:6
b[2:5]
获取列表中的[2,5)位:[3,4,5]
b[:2]
获取列表i=2之前的值(不包括i=2):[1,2]
b[4:]
获取列表i=4以及之后的值(包括i=4):[5,6]
enumerate()
遍历列表并返回位置和对应的值
nums = [1,4,3]
for i ,x in enumerate(nums):
print(i,x)
# 0 1
# 1 4
# 2 3
链表linked list
python没有内置的链表,一般面试的时候如果要使用链表,会给一个定义:
我们自己做题的时候一般不需要自己定义链表。如果需要在末尾添加元素且复杂度为O(1)可以使用内置的list
,如果既需要在末尾添加也需要在开头添加,就是用collections.deque
栈stack
python没有内置的stack&