I/O 高效算法,又称外部内存算法或无缓存算法,是一类旨在高效处理因数据量过大而无法完全放入计算机主内存(RAM)的算法。这些算法在处理大规模数据集(如大规模数据处理、数据库管理和文件系统中的数据集)时特别有用。 当数据项位于内存层次结构的较高位置时,对数据的操作就会变得更加昂贵。对中央处理器寄存器中的数据进行操作,要比对位于外部存储器中的数据项进行操作快大约一百万倍,因为外部存储器需要先取数据。这些数据取回也称为 I/O 操作,在设计算法时需要将其考虑在内。本课程的目标是熟悉有效处理此类问题所需的重要算法概念和技术。我们将使用简化的内存层次结构,但这些概念可以自然扩展到更现实的模型。
即将结束: 只需 199 美元(原价 399 美元)即可通过 Coursera Plus 学习新技能。立即节省
了解顶级公司的员工如何掌握热门技能

该课程共有6个模块
在本模块中,我们将介绍 I/O 高效算法课程。我们将讨论所谓的 I/O 模型,它由一个大小有限的内部存储器和一个大小无限的外部存储器组成,两者之间的数据传输以给定大小的块为单位进行。 我们举了一个简单的例子,说明在外部存储器中处理数据的算法的实际运行时间在很大程度上受其 I/O 行为的影响。最后,我们将讨论在 I/O 模型中分析算法的基础知识。
涵盖的内容
5个视频1篇阅读材料1个作业
在本模块中,我们将以矩阵变换问题为例,讨论设计 I/O 高效算法的两种技术。第一种技术是一种 "基于瓦片 "的方法,可设计出缓存感知算法。第二种技术采用递归方法,可设计出不依赖高速缓存的算法。
涵盖的内容
3个视频1篇阅读材料1个作业
当我们想从外部存储器读取数据时,如果内部存储器已满,我们就需要从内部存储器中驱逐一个数据块,以腾出空间。应该驱逐的块由替换策略决定。在本模块中,我们将介绍 LRU 和其他一些著名的替换策略,并研究 LRU 与最优替换策略相比的 I/O 效率。
涵盖的内容
1个视频1篇阅读材料1个作业
在本模块中,我们将分析 MergeSort 的 I/O 效率,并讨论如何调整 MergeSort 以提高其 I/O 效率。
涵盖的内容
2个视频1篇阅读材料1个作业
在本模块中,我们将介绍一些 I/O 高效数据结构:B 树和缓冲树,以及基于缓冲树的 I/O 高效优先队列。
涵盖的内容
3个视频1篇阅读材料1个作业
在本模块中,我们将讨论时间前向处理,这是一种可用于评估有向无环图上所谓局部函数的技术。
涵盖的内容
4个视频1篇阅读材料1个作业
位教师

提供方
人们为什么选择 Coursera 来帮助自己实现职业发展




学生评论
60 条评论
- 5 stars
70%
- 4 stars
23.33%
- 3 stars
5%
- 2 stars
1.66%
- 1 star
0%
显示 3/60 个
已于 Nov 5, 2019审阅
Everything was clearly explained and the questions were quite intuitive and checking my knowledge. More examples for different scenarios too would help us a lot to learn more.
已于 Sep 28, 2020审阅
Really like the course. Though it's difficult and challenging, I managed to understand the concept. I will keep practicing.
已于 May 8, 2022审阅
The course is really good and the course material is also amazing. I highly reccomend it provided you have an interest in this specialization.
常见问题
要获取课程资料、作业和证书,您需要在注册课程时购买证书体验。 您可以尝试免费试听,或申请资助。课程可能提供 "完整课程,无证书"。通过该选项,您可以查看所有课程资料,提交必要的评估,并获得最终成绩。这也意味着您无法购买证书体验。
注册课程后,您就可以访问专项课程中的所有课程,完成作业后还可以获得证书。您的电子证书将添加到您的 "成就 "页面--在那里,您可以打印证书或将其添加到您的 LinkedIn 个人资料中。
是的。在特定的学习课程中,如果您付不起注册费,可以申请助学金或奖学金。如果您选择的学习课程有助学金或奖学金,您可以在说明页面找到申请链接。
更多问题
提供助学金,





