【学习目标】
 1. 了解线性表的逻辑结构特性是数据元素之间存在着线性关系,在计算机中表示这种关系的两类不同的存储结构是顺序存储结构和链式存储结构。用前者表示的线性表简称为顺序表,用后者表示的线性表简称为链表。
 2. 熟练掌握这两类存储结构的描述方法以及线性表的基本操作在这两种存储结构上的实现。
 3. 能够从时间和空间复杂度的角度综合比较线性表两种存储结构的不同特点及其适用场合。
 4. 结合线性表类型的定义增强对抽象数据类型的理解。
 
 
【学习目标】
 
  【重点和难点】
  链表是本章的重点和难点。扎实的指针操作和内存动态分配的编程技术是学好本章的基本要求,分清链表中指针 p 和结点 *p 之间的对应关系,区分链表中的头结点、头指针和首元结点的不同所指以及循环链表、双向链表的特点等。
 
  【重点和难点】  
  【知识点】
  线性表、顺序表、链表、有序表
 
  【知识点】  
  【学习指南】
  正如课程概况中所提,学习数据结构的目标是为了编出质量更高的程序,因此重在"实践"。本章讨论的线性表是学习的第一种也是最简单的一种数据结构,是整个课程的基础,特别是熟练掌握链表的操作对以后各章的学习将有很大帮助。本章要求必须完成的算法设计题为:2.11,2.21,2.19,2.22,2.24,2.27,2.28,2.38。其中 2.11 和 2.19 可以在学完顺序表之后练习,其余都建议在学完全章的内容之后进行。
 
  【学习指南】  
  【课前思考】
  思考题 1. 抽象数据类型的定义由哪几部分组成?

  思考题 2. 按数据元素之间的逻辑关系不同,数据结构有哪几类?

  思考题 3. 你能举出几个你熟悉的"序列"的例子来吗?
  【课前思考】