考查要点:本题主要考查对串的基本概念的理解,包括空串的定义、串的存储方式及基本运算。
解题核心思路:
明确串的定义:串是字符的有限序列,需区分空串(无字符)与空格串(含空格字符)。
辨析选项描述:重点分析选项B中“空串由空格构成”的正确性,结合空串的定义判断其错误性。
验证其他选项:确认其他选项是否符合串的基本性质(如存储方式、运算类型)。
破题关键点:
空串与空格串的区别:空串长度为0,不含任何字符;空格串长度≥1,至少包含一个空格字符。
选项分析
A. 串是字符的有限序列
串的定义即为字符的有限序列,例如“abc”是字符'a'、'b'、'c'的序列。此选项正确。
B. 空串是由空格构成的串
错误。空串是指不包含任何字符的串,其长度为0;而“由空格构成的串”是至少包含一个空格字符(如' ')的非空串。例如,""是空串," "是空格串。
C. 模式匹配是串的一种重要运算
模式匹配(如KMP算法)是串的重要操作,用于在主串中查找子串。此选项正确。
D. 串既可以采用顺序存储,也可以采用链式存储
串可通过数组(顺序存储)或链表(链式存储)实现,此选项正确。