1.用抽象数据类型定义一个完整的数据结构,数据结构是相互之间存在一种或多种特定关系的数据元素的集合,数据结构包括三个方面,逻辑结构,存储结构和数据的运算。
2.循环队列使用顺序表表示的队列,它也是一种数据结构,栈是一种抽象数据类型,可采用顺序存储和链式存储,只表示逻辑结构。
3.数据的逻辑结构独立于其存储结构,而数据的存储结构是逻辑结构,在计算机上的映射,他不能独立与逻辑结构而存在。
4.对于两种不同的数据结构,他们的逻辑结构和物理结构完全有可能相同,比如二叉树和二叉排序树,二叉排序数可以采用二叉数的逻辑表示和存储方式。
5.相同的逻辑结构,同一种运算,在不同的存储方式下实现时,它的运算效率不一样,例如,线性表既可以用顺序存储方式实现,又可以用链式存储方式实现,插入删除的时间复杂度不一样。
6.要注意算法的定义,它的定义是对于问题求解步骤的描述,而算法的五个特性,它只是算法的必要条件,不能成为算法的定义。
7.算法原地工作是指算法所需要的辅助空间为常量,不是不使用额外的空间。
8.所谓时间复杂度,是指最坏情况下估算算法执行时间的一个上限。
9.同一个算法,实现语言的级别越高,执行效率越低。