在实际的应用中,将用户输入的数据进行处理、保存的目的是为了方便以后的查找和输出等操作,其中查找是最常用的操作。
查找是指从一批记录中找出满足指定条件的记录的过程,又可以成为检索。查找算法广泛应用于各类应用程序中,因此,一个有效的查找算法往往可以大大提高程序的执行效率。
在实际应用中,数据的类型千变万化,每一天数据往往包含多个数据域。但是在执行查找操作时,往往只是指定一个或几个域的值,这些作为查找条件的域我们成为关键字(Key)。关键字分为以下两类:
1、主关键字(Primary Key):能够唯一标识数据结构中的一条记录的关键字;
2、次关键字(Secondary Key):不能唯一区分各个不同记录的关键字。
实际应用中,针对不同的情况往往可以选择不同的查找方法。对于无顺序的数据,只有逐个比较数据,才能找到需要的内容,这种查找方法成为顺序查找。而对于有顺序的数据,可以采用顺序查找方法逐个比较,也可以采取更快速的方法来找到所需的数据。另外,对于一些特殊的参数结构,如链表、树结构和图结构等,都有对应的查找算法。
查找算法分类如下:
▶ 顺序查找
▶ 二分查找(折半查找)
顺序查找和这般查找都是最基本的查找算法,在不同的数据结构中,查找算法可以有不同的形式,如:
▶ 顺序表结构中的查找算法
▶ 链表结构中的查找算法
▶ 树结构中的查找算法
▶ 图结构中的查找算法