408学习笔记-数据结构-2-线性表

线性表

1、逻辑结构

1、数据结构只有一种逻辑结构,而可以有两种存储结构有多种抽象运算



2、线性表是一种逻辑结构,属于总线性结构——线性结构的一种,同属于线性结构的逻辑结构还有:栈、队列和数组



3、线性表定义:具有相同数据类型 n n n数据元素有限有序的列表。



4、线性表的特点:

(1)表中元素有限

(2)表中元素具有逻辑上的顺序性,表中元素有其先后次序

(3)表中元素都是数据元素,每个元素都是单个元素。

(4)表中元素的数据类型都相同,这意味着每个元素占有相同大小的存储空间

(5)表中元素具有抽象性,即仅讨论元素间的逻辑关系,而不考虑元素究竟表示什么内容。

(6)线性表中的第一个元素叫表头元素,最后一个元素叫表尾元素。除了表头元素,每个元素都有一个直接前驱;除了表尾元素,每个元素都有一个直接后继




2、物理结构

2.1、顺序存储——顺序表

1、存取方式:

(1)随机存取:随机存取指的是当存储器中的数据被读取或写入时,所需要的时间与该数据所在的物理地址无关。随机存取的例子就是数组

(2)顺序存取:顺序存取是一种按记录的逻辑顺序进行读、写操作的存取方法,所需要的时间与该数据所在的物理地址有关。顺序存取表现为:在存取第N个数据时,必须先访问前(N-1)个数据。顺序存取的例子就是链表

(3)存取方式取决于存储结构的选择



2、顺序表的定义:线性表的顺序存储结构叫做顺序表。它是用一组地址连续的存储单元依次存储线性表中的数据元素,从而使得逻辑上相邻的两个元素在物理位置上也相邻。



3、顺序表的特点:

(1)表中元素的逻辑顺序与其存储的物理顺序相同

(2)能实现随机存取



4、顺序表的通常是使用数组来实现,要注意:

(1)顺序表中位序 n n n 的元素在数组中下标 n − 1 n-1 n1

(2)用于实现的数组可以是静态数组也可以是动态数组。无论是哪种内存分配方式,都不会改变随机存取的存取方式。



5、存储结构选择顺序表的优缺点:

优点
(1)可进行随机存取。即可通过首地址和元素序号可以在 O ( 1 ) O(1) O(1) 的时间复杂度内找到指定的元素。

(2)存储密度高。每个结点只存储数据元素。

缺点
(1)元素的插入和删除需要移动大量的元素,插入操作平均需要移动 n / 2 n/2 n/2 个元素(插入到首位移动 n n n 个元素,插入到末位移动 0 0 0 个元素);删除操作平均需要移动 ( n − 1 ) / 2 (n-1)/2 (n1)/2 个元素(删除首位移动 n − 1 n-1 n1 个元素,删除末位移动 0 0 0 个元素)。

(2)顺序存储分配需要一段连续的存储空间,不够灵活。

2.2、顺序表上基本操作的实现

1、顺序表初始化
(1)静态数组

(2)动态数组

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值