。线性表的定义和运算结构特点是数据元素之间是线性关系,即在线性表中必存在唯一的一个“第一个”元素,必存在唯一的“最后一个”元素。(5)有序表:aiai1存储方式:向量和链表主要运算:插入、删除、查找和排序。
222
顺序存储线性表
(1)存储结构(2)基本运算:插入、删除、查找、排序等。(3)时间分析:平均移动次数。从上述分析可以看出,无论是插入或删除一个元素,平均需要移动表中一半元素,这在表长
较大时是相当可观的。
223
线性链表
(1)链式存储结构(2)链表的基本运算:插入和删除插入、删除、查找、排序等。
f《计算机软件技术基础》
(合肥工业大学
朱家诚)
2-4
(3)链表的其它形式:循环链表;双向链表。
224向量与链表的比较
(1)线性表的长度是否固定;(2)线性表的主要操作是什么;(3)采用的算法语言
f《计算机软件技术基础》
(合肥工业大学
朱家诚)
2-5
23
栈与队
栈与队是两种特殊的线性表,它们的运算规则较一般线性表有更多的约束和限制,因此又称为限定性数据结构。(1)栈的结构和运算(2)队的结构和运算231栈的结构与运算(1)栈的定义
(2)栈的结构:顺序栈和链栈(3)栈的应用(表达式求值)
详细解释“表达式求值”过程。进一步说明数据结构+算法的重要性。
f《计算机软件技术基础》
(合肥工业大学
朱家诚)
2-6
232队的结构与运算(1)队的定义
(2)队的结构:顺序队和链队(3)队的应用:多任务管理问题(缓冲区设计)。
24
数组
数组已广泛应用于各种高级语言中,是我们比较熟悉的一种数据结构。(1)数组的定义维数
(2)数组的顺序存储结构存放方式。
按行优先、按列优先、特殊矩阵的
f《计算机软件技术基础》
(合肥工业大学
朱家诚)
2-7
(3)数组的链式存储结构单链表、十字链表结构。
f《计算机软件技术基础》
(合肥工业大学
朱家诚)
2-8
25
树与二叉树
(1)树的定义
(2)树的存储结构
f《计算机软件技术基础》
(合肥工业大学
朱家诚)
2-9
(3)二叉树定义:二叉树是
个结点的有限集合,它或为空树,或由一个根结点和两棵分别称为左子树和右子树的互不相交的二叉树构成。
(4)二叉树的基本性质(结点数与层深度等性质)(5)特殊形式的二叉树二叉树:(如何对结点进行编号)
f《计算机软件技术基础》
(合肥工业大学
朱家诚)
2-10
完全二叉树:编号相同则称为完全二叉树。
平衡二叉树
(6)一般树转换为二叉树由于二叉树具有一些r