小编给大家分享一下怎么使用python实现顺序表,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!
,顺序表即线性表的顺序存储结构。它是通过一组地址连续的存储单元对线性表中的数据进行存储的,相邻的两个元素<强>在物理位置上也是相邻的>强。比如,第1个元素是存储在线性表的起始位置LOC(1),那么我第个元素即是存储在LOC(1) +(张)* sizeof (ElemType)位置上,其中sizeof (ElemType)表示每一个元素所占的空间。
#编码:utf - 8 , & # 39;& # 39;& # 39; 作者:xzfreewind & # 39;& # 39;& # 39; , class SeqList(对象): ,def __init__(自我,max=10): 时间=self.max 才能;max , #默认顺序表最多容纳10个元素 #才能初始化顺序表数组 self.num 才能=0 self.date 才能=,(没有),* self.max , ,def is_empty(自我):,,#判定线性表是否为空 return 才能;self.num  is 0 , ,def is_full(自我):,,#判定线性表是否全满 return 才能;self.num  is self.max , ,#获取线性表种某一位置的元素 ,def __getitem__(自我,,我): if 才能;not  isinstance(我,int):, #如果我不为int型,则判定输入有误,即类型错误 ,,raise TypeError if 才能;0 & lt;=,小姐:& lt;, self.num:, #如果位置我满足条件,即在元素个数的范围内,则返回相对应的元素值,否则,超出索引,返回IndexError ,,return self.date[我] 其他的才能: ,,raise IndexError , ,#修改线性表种某一位置的元素 ,def __setitem__(自我,,,,值): if 才能;not  isinstance(关键,int):, #如果关键不为int型,则判定输入有误,即类型错误 ,,raise TypeError if 才能;0 & lt;=, key & lt; self.num:,, #如果位置关键满足条件,即在元素个数的范围内,则返回相对应的元素值,否则,超出索引,返回IndexError ,,self.date(例子),=,价值 其他的才能: ,,raise IndexError ,#按值查找元素的位置 ,def getLoc(自我价值): n 才能=0 for 才能;j 拷贝范围(self.num): ,,if self.date [j],==,值: ,,,return j if 才能;j ==, self.num: ,,return 1,, #如果遍历顺序表还未找到价值值相同的元素,则返回1表示顺序表种没有价值值的元素 , ,#统计线性表中元素的个数 ,def 计数(自我): return self.num才能 , ,#表末尾插入操作 ,def appendLast(自我价值): if 才能;self.num 祝辞=,self.max: ,,print & # 39;从而list is 全# 39; ,才能回来 其他的才能: ,,self.date [self.num],=,价值 ,,self.num +=1 , ,#表任意位置插入操作: ,def 插入(自我,我,值): if 才能;not  isinstance(我,int): ,,raise TypeError if 才能小姐:& lt;, 0,以及小姐:祝辞,self.num: ,,raise IndexError for 才能;j 拷贝范围(self.num我1): ,,self.date [j],=, self.date (j - 1) self.date才能[我],=,价值 self.num 才能+=1 , , ,#删除某一位置的操作 ,def 删除(自我,我): if 才能;not  isinstance(我,int): ,,raise TypeError if 才能小姐:& lt;, 0,以及小姐:祝辞=self.num: ,,raise IndexError for 才能;j 拷贝范围(我self.num): ,,self.date [j],=, self.date [j + 1) self.num 才能;-=1 , ,#输出操作 ,def printList(自我): for 才能小姐:拷贝范围(0,self.num): ,,print self.date[我] , ,#销毁操作 ,def 破坏(自我): self.__init__才能()
以上是“怎么使用python实现顺序表”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!