当前位置:   article > 正文

python数据结构之顺序表_python创建顺序表输入元素输入#结束

python创建顺序表输入元素输入#结束


基础实验1 实现顺序表的基本操作


实验目的:理解线性表的顺序存储结构,并掌握顺序表的基本操作。


实验要求:创建文件,在其中编写一个顺序表的类,该类必须包含顺序表的定义及基本操作,并通过以下步骤测试基本操作的实现是否正确。


(1)初始化一个顺序表SL。
(2)判断SL是否为空。
(3)将元素2、5、16、55、8依次存入SL中。
(4)输出SL中元素的个数。
(5)获取SL中元素5的位置。
(6)在元素5之后插入元素11。
(7)删除值为16的元素。
(8)将SL中元素依次输出。
(9)销毁SL。
 

  1. class SquenceList:
  2. def __init__(self):
  3. self.Seqlist = []
  4. #初始化创建一个空表
  5. def CreateSquenceList(self):
  6. Element = input("请输入元素:")
  7. while Element != '#':
  8. self.Seqlist.append(int(Element))
  9. Element = input("请输入元素:")
  10. #创建一个顺序表,直到输入“#” 停止
  11. def IsEmpty(self):
  12. if len(self.Seqlist) == 0:
  13. print("该表为空表")
  14. else:
  15. print("该表不为空表\n")
  16. #判断该顺序表是否为空表
  17. def NumEle(self):
  18. print(f"该表中元素个数为:{len(self.Seqlist)}\n")
  19. #计算顺序表中的个数
  20. def GetEle(self):
  21. Element = int(input("请输入你想要获取位置的元素:"))
  22. if Element in self.Seqlist:
  23. ipos = self.Seqlist.index(Element)
  24. print(f"该元素的位置为:{ipos + 1}\n")
  25. else:
  26. print("该元素不在顺序表中")
  27. #获取元素在表中的位置
  28. def InsertEle(self):
  29. Element = int(input("请输入你想要插入表中的元素:"))
  30. key = int(input("请输入你想要插入表中元素后面的元素:"))
  31. if key in self.Seqlist:
  32. ipos = self.Seqlist.index(key)
  33. self.Seqlist.insert(ipos + 1, Element)
  34. print(f"顺序表的元素为:{self.Seqlist}\n")
  35. else:
  36. print("位置信息可能错误")
  37. #将元素插入表中指定元素位置之后
  38. def InsertEle2(self):
  39. Element = int(input("请输入你想要插入表中的元素:"))
  40. ipos = int(input("请输入你想要插入表中的位置:"))
  41. self.Seqlist.insert(ipos, Element)
  42. #将元素插入表中指定位置
  43. def DeleteEle(self):
  44. Element = int(input("请输入你想要删除的元素:"))
  45. if Element in self.Seqlist:
  46. ipos = self.Seqlist.index(Element)
  47. self.Seqlist.remove(self.Seqlist[ipos])
  48. print(f"顺序表的元素为:{self.Seqlist}\n")
  49. else:
  50. print("该顺序表无该元素")
  51. #删除表中元素
  52. def Traverselist(self):
  53. length = len(self.Seqlist)
  54. for i in range(0, length):
  55. print(f"该顺序表中第{i + 1}的元素有:{self.Seqlist[i]}")
  56. #遍历整个顺序表
  57. def Distorylist(self):
  58. del self.Seqlist
  59. #销毁整个顺序表
  60. sl = SquenceList()
  61. sl.CreateSquenceList()
  62. sl.IsEmpty()
  63. sl.NumEle()
  64. sl.GetEle()
  65. sl.InsertEle()
  66. sl.DeleteEle()
  67. sl.Traverselist()
  68. sl.Distorylist()
下期预告------python数据结构之链表

不定期更新  如有不足  欢迎指正!

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/码创造者/article/detail/802975
推荐阅读
相关标签
  

闽ICP备14008679号