问答1 问答5 问答50 问答500 问答1000
网友互助专业问答平台

顺序链表到底是什么,在哪里讲的?

提问网友 发布时间:2022-04-22 12:35
声明:本网页内容为用户发布,旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:1656858193@qq.com
1个回答
热心网友 回答时间:2023-07-02 18:15
顺序表是在计算机内存中以[数组]的形式保存的线性表,是指用一组地址连续的[存储单元]依次存储 数据元素 的线性结构。

线性表采用顺序存储的方式存储就称之为顺序表。顺序表是将表中的结点依次存放在计算机内存中一组地址连续的[存储单元]中。

特点:

(1)在顺序表中,各个表项的逻辑顺序与其存储的物理顺序一致,即第 i 个表项存储于第 i 个物理位置(1 < i < n)

(2)对顺序表中的所有表项,即可以进行顺序的访问,也可以随机的访问,也就是说,既可以从表的第一个表项开始逐个访问表项

也可以按照表项的序号(下标)直接的访问。

(3)无需为表示结点间的逻辑关系而增加额外的存储空间,存储利用率提高。

(4)可以方便的存储表中的任一结点,存储速度快。

链表是一种物理[存储单元]上非连续、非顺序的[存储结构],[数据元素]的逻辑顺序是通过链表中的[指针]链接次序实现的。链表由一系列结点(链表中每一个元素称为结点)组成,结点可以在运行时动态生成。每个结点包括两个部分:一个是存储[数据元素]的数据域,另一个是存储下一个结点地址的[指针]域。 相比于[线性表][顺序结构],操作复杂。
特点:
(1)可以方便的进行扩充。
(2)可以方便的删除和插入。
由于顺序表:

1)在表中插入新元素或删除无用元素时,为了保持其他元素的相对次序不变,平均需要移动一半元素,运行效率低

2)由于顺序表要求占用连续的空间,如果预先进性存储分配。则当表长度变化较大时,难以确定合适的存储空间带大小,若

按可能达到的最大的长度预先分配表的空间,则容易造成一部分空间长期的*而得不到充分的利用,若事先对表中的空间估计不足

则插入操作可能是表长超过预先的内存而造成内存溢出,但如果采用指针的方式定义数组,在程序运行时动态的分配内存,一旦需要

就可以分配他,这样可以扩充内存,但是是时间开销比较大

因此这就可以采用链表很好的解决。

本文如未解决您的问题请添加抖音号:51dongshi(抖音搜索懂视),直接咨询即可。

二叉树,如何将二叉树的游标表示法转为左右链表示。 二叉链表应如何建立 谁告诉我c++里的链表是什么东西啊? c语言,链表头插法,结构体中的char数组如何赋值 链表操作 c语言链表问题 芥菜腌制出来口感不脆是怎么回事 两个char*数组类型的链接 1974年属什么生肖 请问1974年出生的属虎是啥星座 荣耀20pro新机充电六个小时对电池有影响吗? 请问1974年出生的属虎是啥星座? 1974年属虎哪个月出生最好 1974年出生的属虎人与哪种生肖婚配最好 74年出生的属虎人未来十年运程如何 1974年出生的虎年本命年应注意什么? 74年属虎男7月生日,一生运势如何 74年出生属虎人最近几年运程 1974年属虎几月出生命好 1974年出生虎年运程 配对碱基链C语言 数据结构中的链表是不是可以存放不同类型的数据 int型char型之类的 还是只能存放同一种类型的元素? 单链表初始化 配对碱基链 C++ 语言 C语言关于链表的问题 数据结构链队列: c# string 类型如何转换成char*类型 以二叉链为存储结构,写一算法求二叉树的叶子结点个数 为什么C语言链表中定义的结构体中要是有2个char,最后printf运行时出错str 我在C++编单链表链表的数据域是char型的,想以3空格作为输入结束 的标志 荣耀20PRO 8+128和荣耀9X 8+256那个值得购买价格差不多,没钱啊想用一个能时间长的? 快手的聊天室是干嘛的 快手直播聊天室怎么开视频 进好友直播间为何会自动上麦 快手直播聊天室四个人怎么弄 快手开直播6人聊天室进直播间黑屏别人进直播间什么样子 快手直播间聊天室上麦是官方邀请,还是主播邀请 快手聊天室麦位怎么添加备注 快手聊天页面不在线,为什么聊天室直播显示在线 为何我的快手没有聊天室?
Top