数据是信息的载体,是描述客观事物的数、字符,以及所有能输入到计算机中并被计算机程序识别和处理的符号的集合。
数据结构是由某一数据元素的集合和该集合中数据元素之间的关系组成。记为:
Data_Structure = {D, R}
线性结构也成为线性表,分为直接存取结构、顺序存取结构和字典结构。
非线性结构分为层次结构和群结构。
数据结构的存储结构:
1. 顺序存储方法:该方法把逻辑上相邻的元素存放到物理位置上相邻的存储单元中。
2. 链接存储方法:该方法不要求逻辑上相邻的元素在物理位置上也相邻,元素之间的逻辑关系由附加的指针指示。
3. 索引存储方法:该方法在存储元素信息的同时,还建立附加的索引表。索引表中每一项成为索引项,索引项的一般形式是:(关键码,地址)。若每个节点在索引表中都有一个索引项,则该索引表称为稠密索引;若一组相邻的节点在索引表中只有一个索引项,则该索引表称为稀疏索引。
4. 散列存储方法:该方法的处理方式是根据结点的关键码通过一个函数计算直接得到该结点的存储地址。
算法的定义:
1. 有输入: 一个算法必须有0个或多个输入。
2. 有输出: 一个算法应有一个或多个输出,输出的量是算法计算的结果。
3. 确定性: 算法的每一步都应确切的、无歧义地定义。对于每一种情况,需要执行的动作都应严格地、清晰地规定。
4. 有穷性