单元练习5 一.判断题(下列各题,正确的请在前面的括号内打√;错误的打╳ ) (ㄨ)(1)串是n个字母的有限序列。 (√)(2)串的数据元素是一个字符。 (ㄨ)(3)串的长度是指串中不同字符的个数。 (ㄨ)(4)如果两个串含有相同的字符,则说明它们相等。 (ㄨ)(5)如果一个串中所有的字母均在另一个串中出现,则说明前者是后者的子串。 (√)(6)串的堆分配存储是一种动态存储结构。 (ㄨ)(7)“DT”是“DATA”的子串。 (ㄨ)(8)串中任意个字符组成的子序列称为该串的子串。 (√)(9)子串的定位运算称为模式匹配。 (√)(10)在链串中为了提高存储密度,应该增大结点的大小。 二.填空题 (1) 由零个或多个字符组成的有限序列称为 字符串(或串) 。 (2) 字符串按存储方式可以分为:顺序存储、链接存储和 堆分配存储 。 (3) 串的顺序存储结构简称为 顺序串 。 (4) 串顺序存储非紧凑格式的缺点是: 空间利用率低 。 (5) 串顺序存储紧凑格式的缺点是对串的字符处理 效率低 。 (6) 串链接存储的优点是插入、删除方便,缺点的 空间利用率低 。 (7) 在C 或 C++语言中,以字符 \0 表示串值的终结。 (8) 空格串的长度等于 空格的个数 。 (9) 在空串和空格串中,长度不为 0 的是 空格串 。 (10) 两个串相等是指两个串相长度等,且对应位置的 字符都相同 。 (11) 设S="My Music",则LenStr(s)= _ 8 。 (12) 两个字符串分别为:S1="Today is",S2="30 July,2005",ConcatStr(S1,S2)的结果是: Today is 30 July,2005 。 (13) 求 子串函 数SubStr("Today is 30 July,2005",13,4)的结果是: July 。 (14) 在串的运算中,EqualStr(aaa,aab)的返回值为 <0 。 (15) 在串的运算中,EqualStr(aaa,aaa)的返回值为 0 。 (16) 在子串的定位运算中,被匹配的主串称为目标串,子串称为 模式 。 (17) 模式匹配成功的起始位置称为: 有效位移 。 (18) 设S="abccdcdccbaa",T="cdcc", 则第 6 次匹配成功。 (19) 设 S="c:/mydocument/text1.doc",T= "mydont ",则字符定位的位置为 0 。 (20) 若 n为主串长度,m 为子串长度,且 n>>m,则模式匹配算法最坏情况下的时间复杂度为: (n-m+1)*m 。 三.选择题 (1)串是一种特殊的线性表,其特殊性体现在( B )。 A.可以顺序存储 B....