在线性表中插入一个元素 获取新基址
在线性表中指定位置插入一个元素:分配存储空间、获取新基址newbase,插入位置及之后的后移
def ListInsert_Sq(arr, i, e):
'''
page24-2.4
在线性表第i个元素之前插入一个元素,从1开始计数
:param arr:
:param i:
:param e:
:return:
'''
# 判断存储空间和参数的合法性
last = arr[-1]
n = len(arr)
# 从序列号n-1的元素开始,到序列号为i的元素,每一个元素等于比其小标小1的元素的值
for j in range(n - 1, i + 1, -1):
arr[j] = arr[j - 1]
arr[i - 1] = e
arr.append(last)
return arr