第二章 数据结构-线性表

第二章.数据结构-线性表

注:这是本人观看B站王卓老师讲的数据结构与算法的学习笔记

2.1 线性表的定义和特点

## 2.2 案例引入

案例一 一元多项式计算

案例二 稀疏多项式计算

题目

结果

顺序存储结构存在问题

1.存储空间分配不灵活

2.运算的空间复杂度高

可以使用链式存储结构

如图

2.4 线性表的顺序表示和实现

线性表的顺序存储结构是指用一段地址连续的存储单元依次存储线性表的数据元素。

例如:线性表(1,2,3,4,5,6)

数组长度,线性表最多可容纳数据元素的个数

线性表长度:当前数据元素个数

如:一个房间最多容纳10个人(数组长度),当前房间里有5个人(线性表长度)

由于顺序表中的元素要求地址连续、依次存放、随机存取、类型相同,高级程序设计语言当中可以用一维数组来实现

一维数组的定义方式:

类型说明符 数组名 [常量表达式]

说明:常量表达式中可以包含常量和符号常量,不能包含变量

多项式例子:

图书表例子:

定义模板

#define LIST_INIT_SIZE 100 //线性表存储空间的初始分配量

typedef struct {

​ ElemType elem[LIST_INIT_SIZE];

​ int length; //当前长度

} SqList;

顺序表的基本操作

操作中常用的预定义常量与类型
基本操作

顺序表的基本算法

简单算法

1.线性表初始化

2.销毁线性表

3.清空线性表

4.求线性表长度

5.判断线性表是否为空

6.顺序表取值

稍微难一点的算法(重要的算法)

7.插入算法

顺序表的插入

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值