程序员2022下半年模拟二上午题之十六
摘要:对于【程序员】软考考试而言,试题无疑是最重要的学习资料之一。在软考备考过程中,吃透试题、掌握试题所考知识点、熟悉试题的出题思路,对我们提升分数的效果是最明显的,通过对试题的反复练习,还可以查漏补缺。今天,给大家带来【程序员2022下半年模拟二上午题】部分试题的详解,一起来看看吧~1、含有n个元素的线性表采用顺序存储方式时,对其运算速度最快的操作是(46)。A、 访问第i
1、含有n个元素的线性表采用顺序存储方式时,对其运算速度最快的操作是(46)。
A、 访问第i个元素(1≤i≤n)
B、 删除第i个元素(1≤i≤n)
C、 在第i个元素(1≤i≤n)之后插入一个新元素
D、 查找与特定值相匹配的元素
答案:A
答题解析:
本题考查数据结构基础知识。
线性表(a1,a2,…,an)采用顺序存储方式如下图所示,其逻辑上相邻的元素物理位置也是相邻的,因此,按照序号访问元素的速度是很快的。
访问第i个元素(1≤i≤n)的元素,仅需计算出ai的存储位置再进行内存的随机访问操作即可,以LOC(a1)表示线性表中第一个元素的存储位置,L表示每个元素所占存储单元的个数,则计算LOC(ai)的方式如下:
LOC(ai)=LOC(a1)+(i-1)×L
再分析其他运算,不在表尾插入或删除时就需要移动其他元素,这是比较耗时的。查找与特定值相匹配的元素时,需要经过一个与表中多个元素进行比较的过程,相对于随机访问第i个元素,消耗更多时间。
2、对于一个初始为空的栈,其入栈序列为abe时,其出栈序列可以有(47)种。
A、 3
B、4
C、5
D、6
答案:C
答题解析:
本题考查数据结构基础知识。
入栈序列为abc时,出栈序列可以为abc、acb、bac、bca、cba,以I表示入栈、O对应出栈,原则是:每个元素仅入栈、出栈各1次;一次出栈操作的条件是栈不为空且只能让栈顶元素出栈。
出栈序列为abc时,对应的操作序列为IOIOIO。
出栈序列为acb时,对应的操作序列为IOIIOO。
出栈序列为bac时,对应的操作序列为IIOOIO。
出栈序列为bca时,对应的操作序列为IIOIOO。
出栈序列为cba时,对应的操作序列为IIIOOO。
在栈的合法操作序列中,其任何前缀部分中,出栈操作的次数都不多于入栈操作。
3、设有字符串S='software',其长度为3的子串数目为(48)。
A、8
B、7
C、6
D、5
答案:C
答题解析:
本题考查数据结构基础知识。
对于字符串S='software',其长度为3的子串有“sof”、“oft”、“ftw”、“twa”、“war”、“are”,共6个。
查看完整试题>>>
软考资料: 2024年软考论文范文> 软考考试核心重点难点汇总> 查看更多>
备考刷题:章节练习+每日一练> 软考历年试题+模拟题>查看更多>