python实现顺序表可以有两中形式进行存储

  1. 列表
  2. 元组

其实简单来说,顺序表无非就是操作列表和元组的方法来对顺序表进行操作。

实例代码

 7 class SqList:
8 def __init__(self,maxsize = 10):
9 self.curlen = 5#顺序表的初始化长度
10 self.maxsize = maxsize#顺序表的最大长度
11 self.listitem = [1,2,3,4,5]#顺序表存储空间
12 def clear(self):
13 """将顺序表置为空表"""
14 self.curlen = 0
15 def empty(self):
16 """判断顺序表是否为空"""
17 return delf.curlen == 0
18 def length(self):
19 return self.curlen
20 def get(self,i):
21 if i < 0 or i > self.curlen - 1:
22 raise Exception("第i个元素不存在")
23 return self.listitem[i]
24 def insert1(self,i,x):
25 """插入的x作为第i个元素"""
26 if i < 0 or i > self.curlen - 1:
27 raise Exception("插入位置非法")
28 if self.curlen == self.maxsize:
29 raise Exception("列表已满")
30 """
31 for j in range(self.curlen,i - 1,-1):
32 self.listitem[j] = self.listitem[j - 1]
32 self.listitem[j] = self.listitem[j - 1]
33 """
34 self.listitem.insert(i,x)
35 self.curlen += 1
36 def remove(self,i):
37 if i < 0 or i > self.curlen - 1:
38 raise Exception("删除位置非法")
39 """
40 for j in range(i,self.curlen):
41 self.listitem[j] = self.listitem[j + 1]
42 """
43 del self.listitem[i]
44 self.curlen -= 1
45 def index(self,x):
46 for i in range(self.curlen):
47 if self.listitem[i] == x:
48 return i
49 return -1
50 def display(self):
51 for i in range(self.curlen):
52 print(self.listitem[i],end = "")
53 print()
54
55 list1 = SqList()
56 print(list1.listitem[0])
57 print(list1.get(1))
58 list1.insert1(1,9)
59 list1.display()
60 list1.remove(1)
61 list1.display()

运行结果

1
2

192345

12345

python实现顺序表的更多相关文章

  1. 【数据结构 Python & C++】顺序表

    用C++ 和 Python实现顺序表的简单操作 C++代码 // Date:2019.7.31 // Author:Yushow Jue #include<iostream> using ...

  2. 数据结构:顺序表(python版)

    顺序表python版的实现(部分功能未实现) #!/usr/bin/env python # -*- coding:utf-8 -*- class SeqList(object): def __ini ...

  3. 顺序表的原理与python中的list类型

    数据是如何在内存中存储的? 在32位的计算机上,1个字节有8位,内存寻址的最小单位就是字节.假设我们有一个int类型的值,它从0x10开始,一个int占据4个字节,则其结束于0x13. 那么数据类型有 ...

  4. python数据结构与算法第五天【顺序表】

    1.列表存储的两种方式 (1)元素内置方式 采用元素内置的方式只能存放同类型元素的数据类型,例如列表中的元素都为整形,元素类型相同,每个元素存放的地址空间大小也相同,则列表中每个元素都是顺序存放的 ( ...

  5. python中的顺序表

    Python中的list和tuple两种类型采用了顺序表的实现技术,tuple是不可变类型,即不变的顺序表,因此不支持改变其内部状态的任何操作,而其他方面,则与list的性质类似. list的基本实现 ...

  6. python基础下的数据结构与算法之顺序表

    一.什么是顺序表: 线性表的两种基本的实现模型: 1.将表中元素顺序地存放在一大块连续的存储区里,这样实现的表称为顺序表(或连续表).在这种实现中,元素间的顺序关系由它们的存储顺序自然表示. 2.将表 ...

  7. 3、顺序表、内存、类型、python中的list

    1.内存.类型本质.连续存储 1.内存本质 2.C 语言实例-计算 int, float, double 和 char 字节大小 使用 sizeof 操作符计算int, float, double 和 ...

  8. python算法与数据结构-顺序表(37)

    1.顺序表介绍 顺序表是最简单的一种线性结构,逻辑上相邻的数据在计算机内的存储位置也是相邻的,可以快速定位第几个元素,中间不允许有空,所以插入.删除时需要移动大量元素.顺序表可以分配一段连续的存储空间 ...

  9. [Python] 数据结构--实现顺序表、链表、栈和队列

    说明: 本文主要展示Python实现的几种常用数据结构:顺序表.链表.栈和队列. 附有实现代码. 来源主要参考网络文章. 一.顺序表 1.顺序表的结构 一个顺序表的完整信息包括两部分,一部分是表中元素 ...

随机推荐

  1. IFIX 5.9 报警存sql

    环境 win7x64 + ifix 5.9 + sql server 2008 (sql 我装在了别的win10的机器上,和ifix的win7不在同一个机器,网是通的) 1 安装sql server ...

  2. 全局ID生成--雪花算法

    分布式ID常见生成策略: 分布式ID生成策略常见的有如下几种: 数据库自增ID. UUID生成. Redis的原子自增方式. 数据库水平拆分,设置初始值和相同的自增步长. 批量申请自增ID. 雪花算法 ...

  3. Spring-cloud-netflix-hystrix

    服务注册中心eureka-server已经搭好,并且SPRING-CLOUD-NETFLIX-EUREKA-CLIENT-APPLICATION提供一个hello服务 畏怯还编写一个eureka-cl ...

  4. 自己yy的中缀表达式转后缀表达式(未验证完全正确)

    目前自己测试的表达式都没有出过问题 思路是这样,先将后缀表达式的计算顺序搞出来..当完全缩出来一个数的时候,如果后面还有要计算的,我们就把它放到后缀表达式的后面 先算后面的..不断迭代.. #incl ...

  5. 网络流学习-Ford-Fulkerson

    首先我们先解决最大流问题 什么是最大流问题呢 根据我的理解,有一个源点s,汇点t,s可以通过一个网络(雾)流向汇点t 但是每一条边都有他的最大传输容量限制,那么我们的任务是,如何分配流量使得..从s流 ...

  6. go modules——HelloWorld示例

    go modules--HelloWorld示例 go modules 存在的意义是方便代码的共享(虽然这会使自己开发过程中有一些小小的麻烦) 开发第一步,创建一个github仓库,然后克隆到本地 首 ...

  7. Chrome Canary crashed bug

    Chrome Canary crashed bug Aw, Snap https://support.google.com/chrome/?p=e_awsnap clear cache, 使用隐身模式 ...

  8. TypeScript Errors All In One

    TypeScript Errors All In One 1. Property 'name' has no initializer and is not definitely assigned in ...

  9. Flutter CodePen challenges

    Flutter CodePen challenges 挑战赛 https://mp.weixin.qq.com/s/qIYokWN9SVgr-F7YxbJuOQ CodePen Flutter 编辑器 ...

  10. free online linux terminal & github cli online

    free online linux terminal & github cli online gitpod https://www.gitpod.io/features/ https://bc ...