考研数据结构与程序设计在线题库每日一练(一十五)
以下是希赛网给大家分享考研数据结构与程序设计在线题库每日一练,希望通过刷题可以帮助大家巩固重要知识点,对知识点查漏补缺,祝愿大家能顺利通过考试!
本文提供考研数据结构与程序设计在线题库每日一练,以下为具体内容
1、当C语言调用函数时,实参是一个数组名,则向函数传送的是( )。
A、数组的首地址
B、数组的长度
C、数组全部元素的拷贝
D、数组第一个元素的值
2、若有定义double a[10],*p=a,以下代表数组元素a[3]的表达式是( )。
A、(*p)[3]
B、*p[3]
C、*(p+3)
D、*p+3
3、若元素入栈次序为ABCD,以下不可能的出栈次序是( )。
A、ABCD
B、DCBA
C、DCAB
D、BACD
4、已知一组关键字为{25,48,36,72,79,82,23,40,16,35},其中每相邻两个关键字构成了有序的子序列。对这些子序列进行一趟两两归并的结果是( )。
A、{25,36,48,72,23,40,79,82,16,35}
B、{25,36,48,72,16,23,40,79,82,35}
C、{25,36,48,72,16,23,35,40,79,82}
D、{16,23,25,35,36,40,48,72,79,82}
5、以下数据结构属于非线性结构的是( )。
A、链表
B、栈
C、队列
D、二叉树
1、试题答案:A
试题解析:
在主调函数中调用另一个函数时,函数名后面括号中的参数称为“实际参数”。数组作为实参向函数传递时,传送的是数组的首地址,故本题选A。
2、试题答案:C
试题解析:
*p=a语句表示将指针p指向数组a的首地址。p+3指将指针p移动到下标为3的元素的位置,*(p+3)指将该地址的元素取出,因此*(p+3)相当于a[3],故本题选C。
3、试题答案:C
试题解析:
栈是受限的线性表,其操作具有“后进先出”的特点,若D是第一个出栈的元素,则对应的出栈序列只有一种,即DCBA。其余选项的出栈次序均有可能得到,故本题选C。
4、试题答案:A
试题解析:
归并的含义是将两个或两个以上的有序表合成一个新的有序表。二路归并排序的具体步骤为:假设初始序列含有n个记录,则可以看成n个有序的子记录,每个子记录的长度为1。然后两两归并,得到⎾n/2⏋个长度为2或为1的有序子序列;再两两归并,…,如此重复,直到得到一个长度为n的有序序列为止。只有选项A符合归并排序的基本思想,故本题选A。
5、试题答案:D
试题解析:
数据的逻辑结构是对数据之间关系的描述,通常有四种基本类型:
① 线性结构:数据元素之间存在“一对一”的线性关系的数据结构;
② 树形结构:数据元素之间存在“一对多”的树形关系的数据结构;
③ 图状或网状结构:数据元素之间存在“多对多”的网络关系的数据结构。
④ 纯集合结构:指数据元素之间除了“同属一个集合”之外,别无其他关系。
其中,树形结构、图状或网状结构、纯集合结构称为非线性结构。对于D,二叉树是树形结构,而A、B、C选项均为线性结构,故本题选D。