问题1:我们为什么要为动态集合设计不 同的数据结构?你能说出哪几种? 问题2:我们之前考察一个数据结构的某 个操作的性能时,为什么没有考虑数据读 写的时间开销?
问题1:我们为什么要为动态集合设计不 同的数据结构?你能说出哪几种? 问题2:我们之前考察一个数据结构的某 个操作的性能时,为什么没有考虑数据读 写的时间开销?
计算机存储体系结构 CPU寄存器 最高速,最低容量,最高代价 高速缓存 高速,较低容量,高代价 内存 较高速,容量相对低,相对高代价 外存 低速,高容量,低代价
计算机存储体系结构 CPU寄存器 高速缓存 内存 外存 最高速,最低容量,最高代价 高速,较低容量,高代价 较高速,容量相对低,相对高代价 低速,高容量,低代价
实际上: ·当处理很大的文件(或者难以将所有数据都一次性载入内存再计 算)时,我们总是根据需要从外存读取数据进入内存,总是从内 存中将更新的数据写到外存 写出 读入
实际上: • 当处理很大的文件(或者难以将所有数据都一次性载入内存再计 算)时,我们总是根据需要从外存读取数据进入内存,总是从内 存中将更新的数据写到外存 写出 读入
问题3: 假定我们需要存储10亿个键值。检索是作 用在该数据集上的重要操作。请问,你该 如何为此类应用设计外存上的数据结构? 你能想到的最好的数据结构是什么?
问题3: 假定我们需要存储10亿个键值。检索是作 用在该数据集上的重要操作。请问,你该 如何为此类应用设计外存上的数据结构? 你能想到的最好的数据结构是什么?
look separately at the two principal components of the running time: the number of disk accesses,and the CPU(computing)time. 15 6 18 spindle platter track read/write head 当我们受限于(受惠于) 现实的物理世界时,我们 该如何思考? arms
磁盘访问机理 当我们受限于(受惠于) 现实的物理世界时,我们 该如何思考?
如果仅仅是BST ·如果键值所需存储空间 远小于页面大小 18 (最坏)gn次的磁盘访问VS和每次访问预取内容的浪费
如果仅仅是BST • 如果键值所需存储空间 远小于页面大小 (最坏)lgn次的磁盘访问 VS 和每次访问预取内容的浪费