动态语言 编码快 调试恼火
没有类型约束 代码复杂一点就会显得不够清晰
弱类型 容易出现不易察觉
列表
列表list 可以作为数组 可以作为堆栈 也可以作为队列使用
# 数组
arr = [1,2,3,4]
print(arr[2])
arr.append(5)
print(arr[-1])
# 模拟堆栈 list模拟堆栈
Stack = []
# 把列表尾部作为栈顶
# 在栈顶添加元素
Stack.append(1)
Stack.append(2)
删除栈顶元素并返回
E1 = stack.pop()
查看栈顶元素
E2 = stack[-1]
元组tuple
memo = dict()
# 二维动态规划的dp函数
Def dp(i,j):
# 元组(I,j)作为哈希表的键
# 用 in 关键字查询改键是否存在于哈希表中
If (i,j) in memo:
# 返回键(I,j)对应的值
Return memo[(I,j)]
# 状态转移方程
Memo[(I,j)] = ..
Return memo[(I,j)]