本周我们不在学习数据的结构,而是开始了对查找这一数据结构中经常使用的一种操作的学习,为了让大家更好的理解本章内容,我先放上一张查找的基本概念
其中查找表是基于查找这一操作的一种数据结构,本章不做具体要求,但我们要知道的是查找表有三种不同的结果----线性表、树表和散列表,本章就是来根据不同的表结构来介绍不同的查找方法。
(1)线性表的查找(包括顺序查找、折半查找和分块查找)
(2)树表的查找(树表的结构包括二叉排序树、平衡二叉树、B-树和B+树)
(3)散列表的查找(散列表不同于线性表以关键字比较为基础进行查找,而是通过一种散列函数将记录的关键字和表中的位置建立关系)
散列查找法主要研究两方面的内容:如何构造散列函数以及如和处理冲突。构造散列函数的方法有数字分析法、平方取中法、折叠法和除留余数法。除留余数法是最常用的方法,而处理冲突的方法有两类:开放地址法和链地址法
在这章的学习当中,我参考了书籍《数据结构·c语言版》,其中我了解了很多需要记住的定义,会对写代码时的注释提供许多的帮助。
下面几周的目标,还是以加强写代码的能力为主,其次就是要能够清楚地知道某种结构的具体定义,最好能够用自己的话来叙述出来。