《数据结构》-python实现-数据的插入与删除

数据插入

#数据插入:在list中的第i个位置插入元素e

def Insert(list, i, e):
    if i>len(list)-1:
        return False
    list.append([])
    for k in range(len(list)-1,i-1,-1):  #注意顺序,应该从大到小,依次-1
        list[k]=list[k-1]
    list[i-1]=e
    print list
    
a=[1,2,4,5,6,7]
Insert(a,3,3)

# 或者如下所示
'''
def Insert(a, i, e):
    b=[]
    b.extend(a[:i-1])
    b.extend([e])
    b.extend(a[i-1:])
    print b
a=[1,2,4,5,6,7]
Insert(a,3,3)
'''
#结果:
[1, 2, 3, 4, 5, 6, 7]

从后向前,依次把前一个位置的元素赋值给当前位置。 python列表,索引不允许超界,所以插入前需要添加一个空元素append.([])

数据删除

#数据删除:删除list中的第i个位置的元素,并赋值给e返回该元素
def delete(list, i):
    if i>len(list)-1:
        return False
    e=list[i-1]
    for k in range(i,len(list)):
        list[k-1]=list[k]
    list.pop() #删除最后一个元素
    print list,e
    
a=[1,2,6,3,4,5]
delete(a,3)

#结果
[1, 2, 3, 4, 5] 6

从前向后,把后一个位置的元素依次赋值给当前位置,记得删除掉最后一个元素
list.pop(): 删除末尾的元素
del list[i]:删除对应下标的元素
list.remove( element ): 删除指定值的元素

猜你喜欢

转载自blog.csdn.net/qq_43243022/article/details/83020020