# 在数组 A 中插入元素 i(第 i 个元素)
# 区间 [0, i) 按升序排列
insertion(A, i):
j ← i - 1
t ← A[i]
while True: # 无限循环,直到满足条件退出
if j < 0:
break
if !(j ≥ 0 and A[j] > t):
break
A[j+1] ← A[j]
j ← j - 1
A[j+1] ← t