- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数据结构讲义 12345
1
数据结构 讲义
12345
基础数据结构
栈
栈
维护一个整数容器,支持插入一个整数,取出最后一个插入的整数(First In
Last Out)
可以通过数组实现,额外使用一个 变量作为栈顶标记。
【顺便注意C++中 ++和++ 两者的区别】
队列
队列
维护一个整数容器,支持插入一个整数,取出最开始的一个未被取出过的整
数(First In First Out)
可以通过数组实现,额外使用两个 变量作为对首和队尾
1
数据结构讲义 12345
2
堆
堆
维护一个整数容器,支持插入一个整数,取出容器中值最大的一个整数 。
数据结构本身拥有一定的实现复杂性,因此我们一般选择使用 STL 的
_ 实现,或者使用 库中的 _,_ 和
_ 实现。
链表
链表
维护一个整数序列,支持在指定整数后面插入一个整数
在 OI 中,一般用于图论中的邻接表。
其实现思路是使用一个结构体,每个结构体存一个能够索引到下一个结构体
的指针。
数组衍生工具
数据结构里面,有一系列工具,可以用于处理数列问题,数列问题本身包含
诸如数列单点修改,区间修改,单点查询,区间查询等等。其中有一些可以用一
个数组完成
2
数据结构讲义 12345
3
数组
普通的数组本身就是一个最简单的数据结构,当然,他也有一个很有逼格的
名字“随机线性存取表”。
区间求和时间复杂度 O(N)
单点修改时间复杂度 O(1)
区间加时间复杂度 O(N)
前缀和
前缀和
给定一个数列 , , , …, ,定义数列 满足
=
那么数列 就是数列 的前缀和。
比如数列[1,2,3,4,5]的前缀和应该是[1,3,6,10,15]
如果我们知道了一个数列的前缀和数列,我们求解原数列的区间和操作就会
变得非常非常迅速。具体来说,我们可以在 O(1)时间复杂度内完成原数列的区间
和询问操作。
因为
+ + ⋯ + = −
如果维护了数列的前缀和,那么数列本身的区间求和复杂度 O(1),但是区间
3
数据结构讲义
您可能关注的文档
最近下载
- 2022年中 国《骨质疏松性骨折诊疗指南》 版 解读.pptx VIP
- MZ∕T 064-2016 老年社会工作服务指南.pdf VIP
- 电力管道施工组织设计方案.docx VIP
- 2022年华北水利水电大学计算机科学与技术专业《计算机网络》科目期末试卷B(有答案).docx VIP
- XXXX光伏电站XXX月运行维护服务报告.docx VIP
- 2025最新医疗机构工作人员廉洁从业九项准则解读.pptx VIP
- 信息处理技术员官方教程(第三版)课后习题答案解析(第10-11章).pdf VIP
- 珍爱生命 远离毒品 主题班会课件(共24张ppt) .pptx VIP
- 2025年湖南民族职业学院单招职业技能测试题库附答案.docx VIP
- 职业生涯规划书PPT.pptx VIP
原创力文档


文档评论(0)