数据结构 第四章 串、数组、广义表 作业(无批改)

  1. 串是一种特殊的线性表,其特殊性体现在( )
    A. 可以顺序存储
    B. 数据元素是单个字符
    C. 可以链式存储
    D. 数据元素可以是多个字符

课本P87:串是一种特殊的线性表,其特殊性体现在数据元素是一个字符,也就是说,串是一种内容受限的线性表;

  1. 下列关千串的的叙述中, 不正确的是( )
    A. 串是字符的有限序列
    B. 空串是由空格构成的串
    C. 模式匹配是串的一种重要运算
    D. 串既可以采用顺序存储, 也可以采用链式存储

A:课本P87:串(或字符串)是由零个或多个字符组成的有限序列;
B:课本P87-88:由一个或多个空格组成的串“ ”称为空格串(不是空串),其长度为空格字符的个数;
C:课本P91:子串的定位运算通常称为串的模式匹配或串匹配;
D:课本P90:与线性表类似,串也有两种基本存储结构:顺序存储和链式存储。但考虑到存储效率和算法的方便性,串多采用顺序存储结构;

  1. 串的长度是指( )
    A. 串中所含不同字母的个数
    B. 串中所含字符的个数
    C. 串中所含不同字符的个数
    D. 串中所含非空格字符的个数

  2. 假设以行序为主序存储二维数组A= array[ 1…100, 1…100] , 设每个数据元素占 2个存储单元,基地址为10, 则LOC[5,5]= ( )
    A. 808
    B. 818
    C. 1010
    D. 1020

公式:Loc(Aij)=10(基地址)+[(5-1)*100+(5-1)]*2=818;
本题下标是1开始的,所以 5-1;
公式在课本P99;

  1. 设二维数组 A[l…m, 1… n] (即m行n列)按行存储在数组 B[l…m x n]中,则二维数组 元素A[iJ]在一维数组 B中的下标为( )
    A. ( i - 1) × n + j
    B. ( i - 1 ) × n + J - 1
    C. i × ( j - 1 )
    D. j × m + i -1

A[i][j] 的前面有i-1行,而每行n个元素,所以 (i-1)*n表示i行前面的元素。
j就表示位于本行的第几个元素,不用变

  1. 广义表 A=(a,b,(c,d),(e,(f,g))), 则Head(Tail(Head(Tail(Tail(A)))))的值为( )。
    A. (g)
    B. (d)
    C. c
    D. d

tail第一步: (b,(c,d),(e,(f,g)))
tail第二步:((c,d),(e,(f,g)))
head第三步:(c,d)
tail第四步:(d)
head第五步:d
此处不设考点,跳过;

  1. 广义表((a,b,c,d))的表头是( ), 表尾是( )
    A. a
    B. ()
    C. (a, b, c, d)
    D. (b, c, d)

显然, 广义表((a,b,c,d))中只有1个元素,即(a,b,c,d)
表头是(a,b,c,d),一个子表
表尾是空表(),长度为0
此处不设考点,跳过;

  1. 设广义表 L= ((a,b,c)), 则L 的长度和深度分别为( )
    A. 1和 l
    B. 1和 3
    C. 1和2
    D. 2和 3

只有一个元素长度是1.唯一的元素里嵌套一层,所以深度是2;
此处不设考点,跳过;

猜你喜欢

转载自blog.csdn.net/Jessieeeeeee/article/details/106041288