一般线性表和数组有什么区别?各有什么特点?

如题所述

第1个回答  2010-01-18
你指的是线性链表吧?

区别主要在动态分配上,现代语言支持动态数组,可以在运行期决定数组大小,但早期语言并不支持,因此数组必须在编译器确定大小。

而线性链表可以动态决定大小,随时删减添加,并且能够知道元素个数。数组除非用动态定义否则你要自己知道元素个数。比如c89就不支持动态数组,但c99支持。iso c++也不支持,但c+0x支持。

在支持动态数组的情况下,区别主要是,能否删除任意元素。数组是整体创建,整体删除的本回答被提问者采纳

线性表和数组有什么区别?
1、数组有维度(比如三维数组)的概念而线性表没有 2、数组和线性表上可进行的操作不一样。一般我们不在数组上进行数据插入和删除的操作,同样,我们也无法直接通过数据序列来访问线性表中的数据单元(比如表中第i个元素)。

线性表和数组有什么区别?
区别主要在动态分配上,现代语言支持动态数组,可以在运行期决定数组大小,但早期语言并不支持,因此数组必须在编译器确定大小。而线性链表可以动态决定大小,随时删减添加,并且能够知道元素个数。数组除非用动态定义否则你要自己知道元素个数。比如c89就不支持动态数组,但c99支持。iso c++也不支持,但c+0x...

顺序表 线性表 数组这三个数据结构有什么异同?求指导,希望能讲清楚点...
一句话:线性表是数据结构中的逻辑结构。可以存储在数组上,也可以存储在链表上。线性表的结点按逻辑次序依次存放在一组地址连续的存储单元里的方法。用顺序存储方法存储的线性表简称为顺序表。一句话:用数组来存储的线性表就是顺序表。总结:你被这几个概念混淆,是因为你没搞懂数据结构里的逻辑结构和...

为什么数组是线性表的 扩展
数组是线性表的一种扩展,因为线性表是存储数据的一维数据结构,它的特点是数据元素之间存在一一对应的关系,即每个数据元素都有唯一的直接前驱和直接后继。而数组可以视为线性表的一种扩展,它具有线性表的特点,同时还具有连续的存储空间和下标访问的能力。具体来说,数组是一块连续的内存空间,可以按照...

线性的数据结构有哪几种?各有什么特点
特点:线性表中数据元素之间的关系是一对一的关系;线性表的逻辑结构简单,便于实现和操作。2、栈 栈又名堆栈,它是一种运算受限的线性表。其限制是仅允许在表的一端进行插入和删除运算。这一端被称为栈顶,相对地,把另一端称为栈底。栈是限定仅在表头进行插入和删除操作的线性表。特点:栈是允许...

求解释线性表与结构体数组的区别与联系。
线性表是分散占用了很多块内存,每个表节点(就是一个结构体)占用一块连续内存,各个节点一般在内存中是不连续的。举个例子:有个结构体数组和线性表,大小是1G;假设计算机内存4G,这时候空闲了2G的内存,这2G的内存可能是分成了很多小块零散的分布的。所以这时候如果用结构体数组的话可能会失败,因为...

线性表的两种存储结构各有哪些优缺点
n)。元素个数不确定时需要以上限申请数组,会造成浪费。链表,动态存储结构,具有适合元素个数不确定且变化大的场合,可以随时申请或归还存储空间,且插入或删除结点时,只要修改链接的指针,不需移动数据结点,时间复杂度为O(1)。但是不能随机访问数据结点,需要遍历链表,时间复杂度为O(n)。

数组、广义表和线性表之间有什么关系
广义表和线性表是数据结构方面的概念,它们都被定义为一个有限的序列(a1,a2,a3,…,an)。只不过线性表中ai被限定为单个的元素,而广义表中ai可以是单个元素,也可以是一个子广义表。所以线性表可以用数组这种顺序存储结构来表示,也可以用链表来表示。而广义表一般只能用链表来表示。

数据结构笔记(四)——线性表
答案是:虽然逻辑不会乱,你怎么吃那都是一串山楂;糖葫芦模型只是为了形象地表达一下线性表的最主要的特点,并不能解释所有的线性表的特点。后面还有别的线性表的内容呢,不能老吃糖葫芦呀多腻呀。。。 实际上线性表是有分类的(这个书上没说),按照操作方式,线性表一般分为 一般线性表 和 ...

顺序存储的线性表和一维数组有何区别? 能够用一位数组实现顺序存储的...
标准上得一维数组和线性表自然不同。 一个是静态固定分配的,一个是可以动态分配空间的,自然是线性表的功能更强大。但是本质上所存储的东西都是一样。主要的是在于,我们一般生活中的问题是不知道具体有多少数据的,所以,静态的不好固定。这就是区别,后面的问题可想而知了 ...

相似回答