怎么使用python实现顺序表

  介绍

小编给大家分享一下怎么使用python实现顺序表,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

,顺序表即线性表的顺序存储结构。它是通过一组地址连续的存储单元对线性表中的数据进行存储的,相邻的两个元素<强>在物理位置上也是相邻的强。比如,第1个元素是存储在线性表的起始位置LOC(1),那么我第个元素即是存储在LOC(1) +(张)* sizeof (ElemType)位置上,其中sizeof (ElemType)表示每一个元素所占的空间。

怎么使用python实现顺序表“> <br/> </p> <p>下面是顺序表的python实现:<br/> </p> <pre类= #编码: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实现顺序表”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

怎么使用python实现顺序表