首页 > 其他分享 >数据结构的复习

数据结构的复习

时间:2025-01-06 22:13:47浏览次数:1  
标签:存储 顺序 复习 元素 插入 位置 表中 数据结构

今天复习了顺序表,顺序表是线性表的一种存储结构,它把线性表中的所有元素按照其逻辑顺序,依次存储到从计算机存储器中指定存储位置开始的一块连续的存储单元中。简单来说,就是用一组连续的内存单元来存放数据元素,数据元素之间的逻辑关系通过物理存储位置相邻来体现。
优点有:
随机访问效率高:由于元素存储在连续的内存单元中,因此可以通过数组下标快速定位到任意一个元素,时间复杂度为 。例如,对于一个顺序表 ,访问 可以直接通过计算内存地址快速获取元素值。存储密度高:顺序表中每个元素只存储自身的数据,没有额外的指针等辅助信息(与链表相比),所以存储密度大,能有效利用存储空间。
缺点有:
插入和删除操作效率低:在顺序表中插入或删除元素时,需要移动大量元素来保持顺序表的连续性。例如,在表头插入一个元素,需要将后面的所有元素依次向后移动一位,时间复杂度为 ,其中 是顺序表中元素的个数。
大小固定,灵活性差:在创建顺序表时需要预先分配一定大小的存储空间,如果后续数据量变化较大,可能会出现空间不足或浪费的情况。
基本操作有:
初始化:创建一个空的顺序表或指定大小的顺序表,并分配相应的内存空间。
插入:在顺序表的指定位置插入一个新元素,需要将插入位置之后的元素依次向后移动。
删除:删除顺序表中指定位置的元素,之后的元素依次向前移动。
查找:根据给定的元素值或位置信息,在顺序表中查找相应的元素。
修改:修改顺序表中指定位置的元素值。

标签:存储,顺序,复习,元素,插入,位置,表中,数据结构
From: https://www.cnblogs.com/lomook/p/18656381

相关文章

  • 数据结构-数据结构绪论
    目录1.1开场百1.2数据结构起源1.3基本概念和术语1.3.1数据1.3.2数据元素1.3.3数据项1.3.4数据对象1.3.5数据结构1.4逻辑结构与物理结构1.4.1逻辑结构1.4.2物理结构1.5数据类型1.5.1数据类型定义1.6抽象数据类型1.1开场百Ifyougivesomeoneaprogram,youw......
  • [数据结构学习笔记6] 树(Trees)
    为什么要有树结构,我们日常生活中,有很多层级关系,比如家庭树,组织架构图等等。这些或许也能够用数组或者链表来表示,但是这个比喻很好,就好像我们用叉子和盘子也能喝汤,但总是不对劲儿,我们可以有更好的表示方式。 了解树的一些术语树是由一系列节点(node)和边(edge)相互关联构成的。孩......
  • 可持久化数据结构
    可持久化数据结构呢,就是说这些数据结构,它们都非常持久(其实就是可以访问和修改历史版本的信息可持久化线段树可持久化权值线段树就是主席树如果你还不太了解,可以看看当然还有更普遍的可持久化线段树——支持区间修改的。考虑pushdown会影响下方历史版本的线段树信息,自然想到......
  • 计算机网络复习
    简答题第一章计算机网络和因特网访问带宽小于实际物理带宽1)网络协议限制了物理带宽的使用(如CSMA/CD、TCP可靠数据传输)2)信道利用率低3)分组的时延和丢失​时延:传输时延、传播时延、处理时延、排队时延​丢包:分组到达的速率大于链路传输的速率,缓冲已满造成丢失4)流......
  • 启航数据结构算法之雅舟,悠游C++智慧之旅——线性艺术:顺序表之细腻探索
    人无完人,持之以恒,方能见真我!!!共同进步!!文章目录一、线性表的概念二、顺序表1.概念与结构2.顺序表的分类静态顺序表动态顺序表三、顺序表的实现1.顺序表的结构2.顺序表的初始化和销毁初始化函数销毁函数3.顺序表的扩容4.顺序表的尾插和头插尾插函数头插函数5.顺序......
  • [数据结构学习笔记5] 队列(Queue)
    队列和堆栈类似,但是它是一种先进先出的结构。FIFO(firstinfirstout)。代码实现,javascriptclassQueue{constructor(){this.items=newLinkedList();}clear(){this.items=newLinkedList();}contains(item){......
  • 8.Redis底层数据结构——ziplist和listpack
    一、ziplist1.1ziplist结构Redis采用紧凑的字节数组表示一个压缩列表,压缩列表结构示意图如下:<zlbytes><zltail><zllen><entry><entry>...<entry><zlend>zlbytes:压缩列表的字节长度,占4个字节,因此压缩列表最多有2*32-1个字节。zltail:压缩列表尾元素相对于压缩......
  • Udemy——Python数据结构与算法(11)
     课程:【Udemy高分付费课程】Python数据结构与算法-终极Python编码面试和计算机科学训练营(中英文字幕)_哔哩哔哩_bilibili算法归并排序基本思想归并排序是一种基于分治思想的排序算法。它的核心思想是将待排序序列不断分成两半,直到每一部分只有一个元素(此时认为是有序......
  • Udemy——Python数据结构与算法(10)
     课程:【Udemy高分付费课程】Python数据结构与算法-终极Python编码面试和计算机科学训练营(中英文字幕)_哔哩哔哩_bilibiliGraph基本代码classGraph:def__init__(self):self.adj_list={}defprint_graph(self):forvertexinself.adj_list......
  • Udemy——Python数据结构与算法(9)
      课程:【Udemy高分付费课程】Python数据结构与算法-终极Python编码面试和计算机科学训练营(中英文字幕)_哔哩哔哩_bilibili哈希表HashTable通过将键(Key)映射到表中一个位置来访问记录,以加快查找速度。简单来说,它就像一个“字典”,你可以通过一个“索引”(键)快速找到对应的内......