线性表删除元素

Posted carol-main-blog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了线性表删除元素相关的知识,希望对你有一定的参考价值。

在线性表中删除指定元素:

 1 class deleelem_in_linelist():
 2     def __init__(self,list,maxsize):
 3         self.data = list
 4         self.length = len(list)
 5         self.maxsize = maxsize
 6     def dele_elem_in_list(self,e):
 7         for i in self.data:
 8             if i == e:
 9                 self.data.remove(i)
10                 print("删除元素%s成功"%e)
11             # else:
12             #     print("线性表中不存在元素%s"%e)
13         return self.data
14 
15 if __name__ == __main__:
16     ob = deleelem_in_linelist([1, 2, 3, 7, 8, 9, 10, 11, 12, 13, 14], 20)
17     print(ob.data)
18     ob.dele_elem_in_list(15)
19     print(ob.data)
20     ob.dele_elem_in_list(10)
21     print(ob.data)

在线性表指定位置删除元素:

 1 """
 2 在线性表中删除某个位置的元素
 3 """
 4 class Solution():
 5     def __init__(self,data,maxsize):
 6         self.data = data
 7         self.maxsize = maxsize
 8         self.length = len(data)
 9     #删除某个位置的元素
10     def del_index_elem(self,i):
11         if i>self.length or i<1:
12             print("该位置无法删除元素")
13         else:
14             e = self.data[i-1]
15             for j in range(i-1,self.length-1):
16                 self.data[j] = self.data[j+1]
17             #将最后一位置为空
18             self.data[self.length-1] = None
19             #线性表长度减一
20             self.length -= 1
21             return self.data
22 
23 if __name__ == __main__:
24     ob = Solution([1, 2, 3, 7, 8, 9, 10, 11, 12, 13, 14], 20)
25     # print(ob.data)
26     ob.del_index_elem(15)
27     print(ob.data)
28     ob.del_index_elem(6)
29     print(ob.data)

 

以上是关于线性表删除元素的主要内容,如果未能解决你的问题,请参考以下文章

线性表--链表基础

建立一个含10个元素的顺序线性表 然后在第i个位置插入元素M 再在第j个位置删除元

[数据结构] - 线性表

PTA 线性表元素的区间删除

DS01——线性表

线性表运算