青岛大学_王卓老师【数据结构与算法】Week02_02_案例引入_学习笔记

本文是个人笔记,仅用于学习分享,素材来自青岛大学王卓老师的教学视频,如有侵权,请留言作删文处理。

王卓老师 数据结构与算法第 02 周第 02 个原视频链接

📚 Week02_02_线性表案例引入

【案例2.1】一元多项式的运算

实现两个一元多项式加、减、乘运算
在这里插入图片描述
例如:
在这里插入图片描述
用数组来表示指数和系数
在这里插入图片描述

则一元多项式相加,就是各对应指数的系数相加:

在这里插入图片描述

【案例2.2】稀疏多项式的运算
稀疏多项式时,

在这里插入图片描述

稀疏多项式只有3项,如果用数组存储,需要20001个存储空间,19998个是空着的。

❓ 用数组存储稀疏多项式的系数会造成存储空间很大的浪费,怎么办?

💬 不用存那么多项,只需要记住指数为0的系数,指数为10000的系数和指数为20000的系数即可。
在这里插入图片描述

多项式非零项的数组表示
在这里插入图片描述

稀疏多项式
在这里插入图片描述

转换为线性表

在这里插入图片描述

对于稀疏多项式,把系数不为零的项的系数和指数存储起来,每一项的系数和指数就构成了线性表。

只不过此时的每一个数据元素有两项。

则求多项式 A 与多项式 B 的和
在这里插入图片描述

(1) 创建一个新数组 C

(2) 分别从头遍历比较 a 和 b 的每一项

📌 指数相同,对应系数相加,若其和不为零,则在 C 中增加一个新项

📌 指数不相同,则将指数较小的项复制到 C 中

(3) 一个多项式已遍历完毕时,将另一个剩余项依次复制到 C 中即可。

❓ 数组 C 多大合适 ?
在这里插入图片描述

计算过程

(1)
在这里插入图片描述

(2)
在这里插入图片描述
(3)
在这里插入图片描述

(4)

在这里插入图片描述

(5)
在这里插入图片描述

【案例2.3】图书信息管理系统
在这里插入图片描述

需要的功能:

(1) 查找 (2) 插入 (3) 删除 (4) 修改 (5) 排序 (6) 计数

📌 图书表抽象为线性表

📌 表中每本图书抽象线性表中数据元素

图书顺序表
在这里插入图片描述

图书链表
在这里插入图片描述

❓ 解决实际问题的步骤?
💬 选择适当的存储结构

💬 实现此存储结构上的基本操作

💬 利用基本操作完成功能

总结
🔸 线性表中数据元素的类型可以是简单类型,也可以是复杂类型。

🔸 许多实际应用问题所涉的基本操作有很大相似性,不应为每个具体应用单独编写一个程序。

🔸 从具体应用中抽象出共性的逻辑结构和基本操作(抽象数据类型),然后实现其存储结构和基本操作。

学习笔记最后有微信公众号:惟CPP,欢迎关注,一起交流学习进步~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值