我对索引的理解
------------
索引真是个好东西。索引的英文名字叫:index,记住这个英文单词,会让我们更容易记忆和联想它到底是什么。在实际的编程中,index这个单词,真是到处可见。例如:数组的下标就是index
如果用一句话描述“索引”的作用,那会是什么?我想是这样:索引是用来辅助查找,用计算机专业术语叫:Addressing(寻址)
现实世界中,我们的查找会存在两种场景:
1. 从局部信息,查询与其相关的整体信息
2. 从整体信息中查询局部信息
怎么理解呢?
搜索引擎需要查询一个网页中是否存在某个关键词以及通过某个关键词查询包含它的所有网页。
索引的应用
--------
正是因为计算机大部分工作都是在Addressing,所以,在计算机中,索引到处存在。小到操作系统虚拟内存到真实内存的映射,就是索引嘛,大到分布式系统、网络,都是这个原理。
以上,我对索引的理解有点“广义”。我觉得数据结构和算法如此重要,它体现计算机精髓的地方便在于此。
展开