【学习目标】
 1. 理解"串"类型定义中各基本操作的特点,并能正确利用它们进行串的其它操作。
 2. 理解串类型的各种存储表示方法。
 3. 理解串匹配的各种算法。
 
 
【学习目标】
 
  【重点和难点】
  相对于其它各个知识点而言,本章非整个课程的重点,鉴于串已是多数高级语言中已经实现的数据类型,因此本章重点仅在于了解串类型定义中各基本操作的定义以及串的实现方法,并学会利用这些基本操作来实现串的其它操作。本章的难点是理解实现串匹配的KMP算法的思想,但它不属本章学习的基本要求,更不是重点学习内容。
 
  【重点和难点】  
  【知识点】
  串的类型定义、串的存储表示、串匹配、KMP算法
 
  【知识点】  
  【学习指南】
  虽然目前各常用的高级语言中都已经实现了串类型,但由于它是通过软件实现的,因此作为一个软件工作者还是应该了解串的实现方法。本章没有必须完成的算法设计题,如果有兴趣可以试试以下几个题:4.10,4.13,4.17,4.23,4.28,4.30。其中前2个是练习串的基本操作的应用,后2个是和KMP算法相关的练习。
 
  【学习指南】  
  【课前思考】
  思考题 1. "串就是线性表"的结论是否正确?

  思考题 2. 串和线性表的主要差别是什么?
  【课前思考】