什么是python中序列表
1、1序列表简介序列表是最简单的线性结构。计算机中逻辑相邻数据的存储位置也是相邻的。它可以快速定位元素的数量,并且中间没有空间。因此,在插入或删除时需要移动大量的元素。序列表可以分配一个连续的存储空间maxsize,用elem记录基址,用length记录元素的实际个数,即序列表的长度,
2、图1显示了序列表的基本形式。数据元素本身是连续存储的。每个元素的存储单元大小是固定的。元素的下标是其逻辑地址。元素的物理地址(实际内存地址)可以通过存储区域的起始地址LOC(E0)加上逻辑地址(第i个元素)与存储单元大小(c)的乘积来存储,即LOC(element i)=LOC(E0)+c*i因此,在访问指定的元素时,不必从头开始遍历,通过计算可以得到相应的地址,时间复杂度为O(1)。如果元素的大小不一致,则实际数据元素应以图2中的外部元素的形式单独存储,并将相应元素的地址信息(即链路)保存在序列表中每个单元的位置。由于每个链路需要相同的存储量,因此可以通过上述公式计算出元素链接的存储位置,然后沿着该链接找到实际存储的数据元素。请注意,图2中的C不再是数据元素的大小,而是存储链接地址所需的存储量,通常非常小。像图2这样的顺序表也被称为实际数据的索引,这是最简单的索引结构。2序列表结构
3、顺序表的完整信息包括两部分:一部分是表中元素的集合,另一部分是关于表的整体情况的信息,主要包括元素存储区域的容量和当前表中现有元素的数量。三。序列表的两种基本实现方法
4、表信息的单元存储区和元素存储区连续地布置在一个存储区中,两部分数据的整体构成一个完整的顺序表对象。该集成结构整体性强,易于管理。但是,由于数据元素存储区域是表对象的一部分,因此在创建顺序表之后,元素存储区域是固定的。2是一个单独的结构。表对象中只保存与整个表相关的信息(即容量和元素数)。实际的数据元素存储在另一个独立的元素存储区中,并通过链接与基本表对象相关联。相关推荐:Python视频教程4元件库更换在集成结构中,由于序列表的信息区和数据区是连续存储在一起的,如果要替换数据区,只能整体移动,即整个序列表对象(存储序列表结构信息的区域)发生变化。如果分离结构要替换数据区,只需更新表信息区中数据区的链接地址,而订单表的对象保持不变。5元素存储扩展如果数据区域被一个更大的存储区域所取代,则可以在不改变表对象的情况下扩展数据存储区域,并且不需要修改所有使用该表的位置。只要程序的运行环境(计算机系统)还有空闲的存储空间,这个表结构就不会满,无法进行操作。这种技术实现的序列表称为动态序列表,因为它的容量在使用中会动态变化。两种扩张策略为每个扩展增加固定数量的存储位置,例如为每个扩展添加10个元素位置,可以称为线性增长。特点:节省空间,但扩展操作频繁,操作次数多。将每个扩展的容量增加一倍,例如将每个扩展的存储空间增加一倍。特点:减少扩展操作次数,但可能浪费空间资源。空间换时间,推荐方式。6序列表添加、删除、修改和搜索的Python代码实现
5、运行结果如下:
6、7用C语言实现加表、查表和修改代码