1 顺序表
590 字
3 分钟
1 顺序表
突发奇想,想用Python把数据结构的知识再过一遍,所以就开始从顺序表从头来一遍,Python内置了一些功能,感觉只需要定义方法调用就好了,或者不想这么干的话,直接调用内置的方法咯。
list 是一种元素个数可变的线性表,采用了分离式技术实现的动态顺序表。可以加入和删除元素,并在各种操作中维持已有元素的顺序(即保序)。
1.1 创建顺序表
# 创建顺序表def CreateSeqList(self): element = input("please enter(input #:end):") while element != '#': self.seqList.append(int(element)) element = input("please enter(input #:end):")1.2 查找元素
# 查找顺序表中某一个元素def FindElement(self): key = int(input("please enter what you want to find:")) if key in self.seqList: keyPosition = self.seqList.index(key) result = keyPosition else: result = "none" return result1.3 插入元素
# 在指定位置上插入元素def InsertElement(self): postion = int(input("请输入要插入的位置:")) key = int(input("请输入要插入的值:")) print("插入前顺序:", self.seqList) self.seqList.insert(postion, key) print("插入后顺序:", self.seqList)1.4 删除元素
# 在指定位置上删除元素def DeleteElement(self): postion = int(input("请输入要删除元素的位置:")) print("删除前的顺序表:", self.seqList) if postion < len(self.seqList) and postion >= 0: del self.seqList[postion] return self.seqList else: print("不存在啊老铁,删除个毛线啊")1.5 完整代码
class SequenceList:
# 初始化 def __init__(self): self.seqList = [] # 初始化一个空表
# 创建顺序表 def CreateSeqList(self): element = input("please enter(input #:end):") while element != '#': self.seqList.append(int(element)) element = input("please enter(input #:end):")
# 查找顺序表中某一个元素 def FindElement(self): key = int(input("please enter what you want to find:")) if key in self.seqList: keyPosition = self.seqList.index(key) result = keyPosition else: result = "none" return result
# 在指定位置上插入元素 def InsertElement(self): postion = int(input("请输入要插入的位置:")) key = int(input("请输入要插入的值:")) print("插入前顺序:", self.seqList) self.seqList.insert(postion, key) print("插入后顺序:", self.seqList)
# 在指定位置上删除元素 def DeleteElement(self): postion = int(input("请输入要删除元素的位置:")) print("删除前的顺序表:", self.seqList) if postion < len(self.seqList) and postion >= 0: del self.seqList[postion] return self.seqList else: print("不存在啊老铁,删除个毛线啊")
# 遍历顺序表元素 def TraverseElement(self): for i in range(len(self.seqList)): print(self.seqList[i], end =' ')
# 判空 def IsEmpty(self): return len(self.seqList) == 0
# 销毁顺序表 def DestorySeqList(self): print("销毁前顺序表:", self.seqList) self.__init__() print("销毁后顺序表:", self.seqList)
# 测试if __name__ == '__main__': list = SequenceList() list.CreateSeqList() print(list.seqList) print(list.FindElement()) list.InsertElement() list.DeleteElement() list.TraverseElement() list.IsEmpty() list.DestorySeqList()支持与分享
如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!
相关文章智能推荐
1
2 单链表
程技2023-09-25
2
9款最佳Python脚本:让工作自动化起来!
程技2023-10-22
3
6 小时 Python 入门
程技2023-09-25
4
Anaconda 入门指南
程技2023-09-25
5
Jupyter添加目录toc
程技2023-09-25
随机文章随机推荐
樊笼










