基本设计方法列举法归纳法递推递归减斗递推技术回溯法
1
f算法复杂度算法时间复杂度和算法空间复杂度算法时间复杂度是指执行算法所需要的计算工作量(1)平均性态分析(2)最坏情况复杂性算法空间复杂度是指执行这个算法所需要的内存空间如果额外空间量相对于问题规模来说是常数,则称该算法是原地工作的。12数据结构的基本基本概念数据结构研究的三个方面1数据集合中各数据元素之间所固有的逻辑关系即数据的逻辑结构2在对数据进行处理时各数据元素在计算机中的存储关系即数据的存储结构3对各种数据结构进行的运算数据结构是指相互有关联的数据元素的集合(数据的逻辑结构、数据的存储结构、对各种数据结构的运算)数据的逻辑结构包含1表示数据元素的信息2表示各数据元素之间的前后件关系数据的存储结构有顺序链接索引等线性结构条件1有且只有一个根结点2每一个结点最多有一个前件也最多有一个后件非线性结构不满足线性结构条件的数据结构13线性表及其顺序存储结构线性表由一组数据元素构成数据元素的位置只取决于自己的序号元素之间的相对位置是线性的在复杂线性表中由若干项数据元素组成的数据元素称为记录而由多个记录构成的线性表又称为文件非空线性表的结构特征1且只有一个根结点a1它无前件2有且只有一个终端结点a
它无后件3除根结点与终端结点外其他所有结点有且只有一个前件也有且只有一个后件结点个数
称为线性表的长度当
0时称为空表线性表的顺序存储结构具有以下两个基本特点1线性表中所有元素的所占的存储空间是连续的2线性表中各数据元素在存储空间中是按逻辑顺序依次存放的ai的存储地址为ADRaiADRa1i1kADRa1为第一个元素的地址k代表每个元素占的字节数顺序表的运算插入删除,查找,排序,分解,复制和逆转等操作详见1416页14栈和队列栈是限定在一端进行插入与删除的线性表允许插入与删除的一端称为栈顶不允许插入与删除的另一端称为栈底栈按照