四川大学874计算机科学专业基础综合2016年考研专业课真题试卷
- 格式:pdf
- 大小:643.31 KB
- 文档页数:6
2018年攻读硕士学位研究生入学考试试题考试科目:计算机科学专业基础综合科目代码:874(试题共8页)(答案必须写在答题纸上,写在试题上不给分)数据结构与算法(65分)一、单项选择题(每小题2分,共17小题,共34分1.下面关于“算法”的描述,错误的是()A.算法必须是正确的B.算法必须要能够结束C.一个问题可以有多种算法解决D.算法的某些步骤可以有二义性2.下面函数的时间复杂度是()void func(int n){int sum=0,i, j;for(i=1; i<n; i++)for(j=1; j<n; j*=2)sum++;A.O(log2n)B.O(n2)C.(n log2n)D.O(n)3.下面关于线性表的叙述中,错误的是()A.线性表采用顺序存储,必须占用一片连续的存储单元B.执行查找操作时,链式存储比顺序存储的查找效率更高。
C.线性表采用链式存储,不必占用一片连续的存储单元。
D.线性表采用链式存储,便于插入和删除操作。
4.设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用()最节省时间A.单链表B.带头指针的单循环链表C.带尾指针的单循环链表D带头结点的双循环链表5.一个栈的输入序列为1,2,3,....,n,若输出序列的第一个元素是n,则输出的第i (1<=i<=n)个元素是()A.不确定B.n-i+1C.iD.n-i6.若一棵完全二叉树有666个结点,则该二叉树中叶子结点的个数是()A.156B.155C.333D.3347.对于下列关键字序列,不可能构成某二叉查找树中一条查找路径的序列是()A.99,28,86,36,94,65B.97,18,89,34,76,42C.16,91,68,29,33,50D.21,27,80,76,29,398.下述二叉树中,哪一种满足性质:从任一结点出发到根的路径上所经过的结点序列按其关键字有序()A.二叉查找树B.哈夫曼树C.AVL树D.堆9.在右图的AVL树中插入关键字18后得到一棵新AVL树,在新AVL树中,关键字11所在结点的左、右孩子结点中保存的关键字分别是()A.7,16 C.9,26B.9,18 D.7,1810.将一棵树T1转化为对应的二叉树T2,则T1后序遍历序列是T2的()序列A.前序遍历B.中序遍历C.后序追历D.层次遍历11.当各边上的权值()时,BFS算法可用来解决单源最短路径问题A.均相等B.均互不相等C.较小D.以上都不对12.已知有向图G=(V,E),其中V={V2,V3,V4,V5,V6,V7},E={<V1,V2>,<V1,V3>,<V1,V4>,<V2,V5>,<V2,V6>,<V3,V5>,<V3,V6>,<V4,V6>,<V5,V7>,<V6,V7>},则G的一个拓扑序列()A.V1,V3,V2,V6,V4,V5,V7B.V1,V3,V4,V6,V2,V5,V7C.V1,V3,V4,V5,V2,V6,V7D.V1,V2,V5,V3,V4,V6,V713.采用Kruskal算法求右图的最小生成树时,依次选择的边是()A.(a,b)(b,c)(c,d)(d,f)(a,e)B.(d,f)(c,d)(b,c)(a,b)(a,e)C.(a,b)(b,c)(d,f)(c,d)(a,d)D.(a,b)(d,f)(b,c)(c,d)(a,e)14.设哈希表长为13,哈希函数是H(key)=key%13,表中已有关键字18,39,75,93共四个,现要将关键字为70的结点加到表中,用伪随机探测再散列法解决冲突,使用的伪随机序列为5,8,3,9,7,1,6,4,2,11,13,21则放入的位置是(A.8B.11C.7D.515.一棵高度为3的3阶B树,至少含有()个关键字A.12B.10C.7D.都不是16.在下列排序算法中,哪一个算法的时间复杂度与数据的初始排列无关()A.直接插入排序B.希尔排序C.快速排序D.基数排序17.数据表中有10000个元素,如果仅要求求出最大的3个元素,则采用()算法最节省时间A.堆排序B.希尔排序C.快速排序D.直接选择排序二、综合应用题(18-20题,共31分18.(10分)对于一个字符集中具有不同权值的字符进行Huffman编码时,如果已知某个字符的Huffman 编码为0101,对于其他无字符的Huffman编码,请分析说明:(1)具有哪些特征的编码是不可能的(2)具有哪些特征的编码是一定会有的19.(10分)设有向图用邻接表表示,图有n个顶点,表示为0至n-1,试写一个算法求顶点k的入度(0<=k<n)20.(11分)二叉树结点的平衡因子(bf)定义为该结点的左子树高度与右子树高度之差。
2016年全国硕士研究生入学统一考试计算机科学与技术学科联考计算机学科专业基础综合试题一、单项选择题:第1~40小题,每小题2分,共80分。
下列每题给出的四个选项中,只有一个选项最符合试题要求。
1.已知表头元素为c的单链表在内存中的存储状态如下表所示。
现将f存放于1014H处并插入到单链表中,若f在逻辑上位于a和e之间,则a, e, f的“链接地址”依次是。
A.1010H, 1014H, 1004H B.1010H, 1004H, 1014HC.1014H, 1010H, 1004H D.1014H, 1004H, 1010H2.已知一个带有表头结点的双向循环链表L,结点结构为prev data next,其中,prev和next分别是指向其直接前驱和直接后继结点的指针。
现要删除指针p所指的结点,正确的语句序列是。
A.p->next->prev = p->prev; p->prev->next = p->prev; free(p);B.p->next->prev = p->next; p->prev->next = p->next; free(p);C.p->next->prev = p->next; p->prev->next = p->prev; free(p);D.p->next->prev = p->prev; p->prev->next = p->next; free(p);3.设有图下图所示的火车车轨,入口到出口之间有n条轨道,列车的行进方向均为从左至右,列车可驶入任意一条轨道。
现有编号为1~9的9列列车,驶入的次序依次是8,4,2,5,3,9,1,6,7。
若期望驶出的次序依次为1~9,则n至少是。
A.2 B.3 C.4 D.54.有一个100阶的三对角矩阵M,其元素m i,j(1≤i≤100,1≤j≤100)按行优先依次压缩存入下标从0开始的一维数组N中。
计算机学科2016考研真题1、合同主体11 甲方(出售方):姓名:____________________身份证号:____________________12 乙方(购买方):姓名:____________________身份证号:____________________2、合同标的21 本合同的标的为计算机学科 2016 考研真题。
22 该真题应包含计算机学科当年考试的全部科目及题型,且内容完整、准确、清晰。
3、权利义务31 甲方的权利义务311 甲方有权按照约定的价格向乙方出售考研真题。
312 甲方有义务保证所提供的考研真题真实、有效,且未经过篡改或伪造。
313 甲方应在约定的时间内将考研真题交付给乙方。
32 乙方的权利义务321 乙方有权要求甲方提供真实、有效的考研真题。
322 乙方有义务按照约定的价格向甲方支付购买真题的费用。
323 乙方不得将所购买的考研真题用于非法目的,如传播、售卖等。
4、违约责任41 若甲方未能按照约定提供真实、有效的考研真题,甲方应退还乙方已支付的费用,并按照费用的一定比例向乙方支付违约金。
42 若乙方未按照约定支付费用,每逾期一天,应按照未支付金额的一定比例向甲方支付滞纳金。
43 若乙方将考研真题用于非法目的,乙方应承担由此产生的一切法律责任,并向甲方支付高额的赔偿金。
5、争议解决方式51 本合同在履行过程中发生的争议,由双方协商解决。
52 协商不成的,任何一方均有权向合同签订地的人民法院提起诉讼。
6、其他条款61 本合同自双方签字(或盖章)之日起生效。
62 本合同一式两份,双方各执一份,具有同等法律效力。
63 本合同未尽事宜,可由双方另行签订补充协议。
补充协议与本合同具有同等法律效力。
一、单项选择题1-40小题,每小题2分,共80分。
下列每题给出的四个选项中,只有一个选项是最符合题目要求的。
1 【正确答案】 D【试题解析】考查限定条件的出栈序列。
A可由in,jn,jn,in,out,out,in,out,out,in,out,out得到;B可由in,in,in,out,out,in,out,out,in,out,in,out得到;C可由in,in,out,in,out,out,in,in,out,in,out,out得到;D可由in,out,in,in,in,in,in,out,out,out,out,out得到,但题意要求不允许连续三次退栈操作,故D错。
2 【正确答案】 C【试题解析】考查受限的双端队列的出队序列。
A可由左入,左入,右入,右入,右入得到;B可由左入,左入,右入,左入,右入得到;D可由左入,左入,左入,右入,左入得到。
所以不可能得到C。
3 【正确答案】 D【试题解析】考查线索二叉树的基本概念和构造。
题中所给二叉树的后序序列为dbca。
结点d无前驱和左子树,左链域空,无右子树,右链域指向其后继结点b:结点b无左子树,左链域指向其前驱结点d:结点c无左予树,左链域指向其前驱结点b,无右子树,右链域指向其后继结点a。
4 【正确答案】 C【试题解析】考查平衡二叉树的插入算法。
插入48以后,该二叉树根结点的平衡因子由一1变为一2,失去平衡,需进行两次旋转(先右旋后左旋)操作。
5 【正确答案】 B【试题解析】考查树结点数的特性。
设树中度为i(i=0,1,2,3,4)的结点数分别为Nj,树中结点总数为N,则树中各结点的度之和等于N—1,即N=1+N1+2N2+3N3+4N4=N0+N1+N2+N3+N4,根据题设中的数据,即可得到N0=82,即树T的叶结点的个数是82。
6 【正确答案】 A【试题解析】考查赫夫曼树的特性。
赫夫曼树为带权路径长度最小的二叉树,不一定是完全二又树。
2017年设读硕士学位研究生入学考试试题考试科目:计算机科学专业基础综合科目代码:874试题共8页(答案必须写在答题纸上,写在试题上不给分)数据结构与算法(65分)一.单项选择题(每小题2分,共17小题,共34分)1.如果在数据结构中每个数据元素只可能有一个直接前驱,但可以有多个直接后继,则该结构是()A.栈B.队列C.树D.图2.通常说顺序表具有随机存取特性,指的是A.查找值为x的元素的时间与顺序表中元素个数n无关B查找值为x的元素的时间与顺序表中元素个数n有关C.查找序号为i的元素的时间与顺序表中元素个数n无关D.查找序号为i的元素的时间与顺序表中元素个数n有关3.链栈与顺序栈相比有一个明显的优点,即()A.进栈操作更方便B.通常不会出现栈上溢出的情况C.总是不会出现栈空的情况D.出栈操作更方便4.折半查找的时间复杂性为()A.O(n2)B.O(n)C.O(nlog2n)D.O(log2n)5.在待排序的元素序列基本有序的前提下效率最高的排序方法是()A.选择排序B.插入排序C.快速排序D.归并排序6设无向连通图的顶点个数为n,则该图最少有()条边。
A.nB.n/2C.n-1D.n(n-1)/27.一棵度为5.结点个数为n的树采用孩子链存储结构时,其中空指针域的个数是()A.5nB.4n+1C.4nD.4n+18.用Prim算法求一个连通的带权图的最小代价生成树,在算法执行的某时刻,已选取的顶点集合U={1,2,3},已选取的边的集合TE={(1,2),(2,3)},要选取下一条权值最小的边,应当从()组边中选取第1页。
一、单项选择题1-40小题,每小题2分,共80分。
下列每题给出的四个选项中,只有一个选项是最符合题目要求的。
1 【正确答案】 C2 【正确答案】 B3 【正确答案】 A4 【正确答案】 D5 【正确答案】 C6 【正确答案】 D7 【正确答案】 D8 【正确答案】 D9 【正确答案】 D10 【正确答案】 B11 【正确答案】 C12 【正确答案】 D13 【正确答案】 C14 【正确答案】 A15 【正确答案】 A16 【正确答案】 D17 【正确答案】 A18 【正确答案】 C19 【正确答案】 C20 【正确答案】 C21 【正确答案】 D22 【正确答案】 B23 【正确答案】 A24 【正确答案】 B25 【正确答案】 D26 【正确答案】 A27 【正确答案】 A28 【正确答案】 C29 【正确答案】 B30 【正确答案】 A31 【正确答案】 C32 【正确答案】 D33 【正确答案】 C34 【正确答案】 B35 【正确答案】 D36 【正确答案】 C37 【正确答案】 B38 【正确答案】 A39 【正确答案】 B40 【正确答案】 D二、综合应用题41-47小题,共70分。
41 【正确答案】算法的基本设计思想:①基于先序递归遍历的算法思想是用一个static变量记录wpl,把每个结点的深度作为递归函数的一个参数传递,算法步骤如下:若该结点是叶子结点,那么变量wpl加上该结点的深度与权值之积;若该结点非叶子结点,那么若左子树不为空,对左子树调用递归算法,若右子树不为空,对右子树调用递归算法,深度参数均为本结点的深度参数加1;最后返回计算出的wpl即可。
②基于层次遍历的算法思想是使用队列进行层次遍历,并记录当前的层数,当遍历到叶子结点时,累计wpl;当遍历到非叶子结点时对该结点的把该结点的子树加入队列;当某结点为该层的最后一个结点时,层数自增1;队列空时遍历结束,返回wpl。
42 【正确答案】二叉树结点的数据类型定义如下:typedef struct BiTNode{int weight;struct BiTNode *lchild,*rchild;}BiTNode,*BiTree。
2016年攻读硕士学位研究生入学考试试题考试科目:计算机科学专业基础综合科目代码:874#适用专业:计算机科学与技术.计算机应用技术.计算机技术.软件工程(试题共9页)(答案必须写在答题纸上,写在试题上不给分)数据结构与算法分析(共65分)一.单项选择题(每小题2分,共18小题,共36分)1.程序段for(i=n-1;>=1;--i)for(j=i;j<i;++j)if(A[j])ali与al+1对换;其中n为正整数,则最后一行的语句最多执行()次。
A.O(n)B.O(n2)C.O(n3)D.O(nlogn)2.将两个有N个元素的有序表归并成一个有序表,其最少比较次数为()。
A.NB.2NC.N-1D.2N-23.下列编码中属前缀编码的是()A.{1,01,000,001}B.{0,1,00,11C.{0,10,110,11}D.{1,01,011,010}4.在具有n个结点的有序单链表中插入一个新结点并使链表仍然有序的时间复杂度是()A.O(1)BO(n) C.O(nlogn) D.O(n2)5.若用一个不带头结点的循环单链表表示队列,则最好用()标识链队。
A.首结点指针B尾结点指针C.首结点和尾结点两个指针D任何结点指针6.一个10阶对称矩阵A[1...10,1...10]采用压缩存储方式,将其下三角和主对角部分按行优先存储到一维数组B[1...m]中,则A[5][8]元素在B中的位置k是()。
A.32B.37C.45D.607.下列排序算法中元素的移动次数和关键字的初始排列次序无关的是()A.直接插入排序B.起泡排序C.快速排序D.基数排序8.采用邻接矩阵表示一个具有n个顶点m条边的无向图,该矩阵的大小是()。
A.2n*2mB.m*mC.n*mD.n*n9.设某哈夫曼树中有199个结点,则该哈夫曼树中有()个叶子结点。
A.99B.100C.101D.10210.以下关于广度优先遍历算法的叙述中正确的是A.广度优先历算法不适合有向图。
2018年攻读硕士学位研究生入学考试试题考试科目:计算机科学专业基础综合科目代码:874(试题共8页)(答案必须写在答题纸上,写在试题上不给分)数据结构与算法(65分)一、单项选择题(每小题2分,共17小题,共34分1.下面关于“算法”的描述,错误的是()A.算法必须是正确的B.算法必须要能够结束C.一个问题可以有多种算法解决D.算法的某些步骤可以有二义性2.下面函数的时间复杂度是()void func(int n){int sum=0,i, j;for(i=1; i<n; i++)for(j=1; j<n; j*=2)sum++;A.O(log2n)B.O(n2)C.(n log2n)D.O(n)3.下面关于线性表的叙述中,错误的是()A.线性表采用顺序存储,必须占用一片连续的存储单元B.执行查找操作时,链式存储比顺序存储的查找效率更高。
C.线性表采用链式存储,不必占用一片连续的存储单元。
D.线性表采用链式存储,便于插入和删除操作。
4.设一个链表最常用的操作是在末尾插入结点和删除尾结点,则选用()最节省时间A.单链表B.带头指针的单循环链表C.带尾指针的单循环链表D带头结点的双循环链表5.一个栈的输入序列为1,2,3,....,n,若输出序列的第一个元素是n,则输出的第i (1<=i<=n)个元素是()A.不确定B.n-i+1C.iD.n-i6.若一棵完全二叉树有666个结点,则该二叉树中叶子结点的个数是()A.156B.155C.333D.3347.对于下列关键字序列,不可能构成某二叉查找树中一条查找路径的序列是()A.99,28,86,36,94,65B.97,18,89,34,76,42C.16,91,68,29,33,50D.21,27,80,76,29,398.下述二叉树中,哪一种满足性质:从任一结点出发到根的路径上所经过的结点序列按其关键字有序()A.二叉查找树B.哈夫曼树C.AVL树D.堆9.在右图的AVL树中插入关键字18后得到一棵新AVL树,在新AVL树中,关键字11所在结点的左、右孩子结点中保存的关键字分别是()A.7,16 C.9,26B.9,18 D.7,1810.将一棵树T1转化为对应的二叉树T2,则T1后序遍历序列是T2的()序列A.前序遍历B.中序遍历C.后序追历D.层次遍历11.当各边上的权值()时,BFS算法可用来解决单源最短路径问题A.均相等B.均互不相等C.较小D.以上都不对12.已知有向图G=(V,E),其中V={V2,V3,V4,V5,V6,V7},E={<V1,V2>,<V1,V3>,<V1,V4>,<V2,V5>,<V3,V5>,<V3,V6>,<V4,V6>,<V5,V7>,<V6,V7>},则G的一个拓扑序列()A.V1,V3,V2,V6,V4,V5,V7B.V1,V3,V4,V6,V2,V5,V7C.V1,V3,V4,V5,V2,V6,V7D.V1,V2,V5,V3,V4,V6,V713.采用Kruskal算法求右图的最小生成树时,依次选择的边是()A.(a,b)(b,c)(c,d)(d,f)(a,e)B.(d,f)(c,d)(b,c)(a,b)(a,e)C.(a,b)(b,c)(d,f)(c,d)(a,d)D.(a,b)(d,f)(b,c)(c,d)(a,e)14.设哈希表长为13,哈希函数是H(key)=key%13,表中已有关键字18,39,75,93共四个,现要将关键字为70的结点加到表中,用伪随机探测再散列法解决冲突,使用的伪随机序列为5,8,3,9,7,1,6,4,2,11,13,21则放入的位置是(A.8B.11C.7D.515.一棵高度为3的3阶B树,至少含有()个关键字A.12B.10C.7D.都不是16.在下列排序算法中,哪一个算法的时间复杂度与数据的初始排列无关()A.直接插入排序B.希尔排序C.快速排序D.基数排序17.数据表中有10000个元素,如果仅要求求出最大的3个元素,则采用()算法最节省时间A.堆排序B.希尔排序C.快速排序D.直接选择排序二、综合应用题(18-20题,共31分18.(10分)对于一个字符集中具有不同权值的字符进行Huffman编码时,如果已知某个字符的Huffman 编码为0101,对于其他无字符的Huffman编码,请分析说明:(1)具有哪些特征的编码是不可能的(2)具有哪些特征的编码是一定会有的19.(10分)设有向图用邻接表表示,图有n个顶点,表示为0至n-1,试写一个算法求顶点k的入度(0<=k<n)20.(11分)二叉树结点的平衡因子(bf)定义为该结点的左子树高度与右子树高度之差。
一、单项选择题1-40小题,每小题2分,共80分。
下列每题给出的四个选项中,只有一个选项是最符合题目要求的。
1 【正确答案】 A2 【正确答案】 B3 【正确答案】 D4 【正确答案】 D5 【正确答案】 D6 【正确答案】 C7 【正确答案】 A8 【正确答案】 C9 【正确答案】 C10 【正确答案】 C11 【正确答案】 A12 【正确答案】 A13 【正确答案】 B14 【正确答案】 D15 【正确答案】 C16 【正确答案】 B17 【正确答案】 B18 【正确答案】 D19 【正确答案】 C20 【正确答案】 B21 【正确答案】 B22 【正确答案】 D23 【正确答案】 B24 【正确答案】 C25 【正确答案】 D26 【正确答案】 B27 【正确答案】 A28 【正确答案】 A29 【正确答案】 B30 【正确答案】 C31 【正确答案】 C32 【正确答案】 C33 【正确答案】 D34 【正确答案】 A35 【正确答案】 B36 【正确答案】 B37 【正确答案】 A38 【正确答案】 C39 【正确答案】 A40 【正确答案】 C二、综合应用题41-47小题,共70分。
41 【正确答案】算法的基本设计思想算法的核心思想是用空间换时间。
使用辅助数组记录链表中已出现的数值,从而只需对链表进行一趟扫描。
因为|data|≤n,故辅助数组q的大小为n+1,各元素的初值均为0。
依次扫描链表中的各结点,同时检查q[|data|]的值,如果为0,则保留该结点,并令q[|data|]=1;否则,将该结点从链表中删除。
42 【正确答案】使用C语言描述的单链表结点的数据类型定义typedef struct node{int data;struct node*link;}NODE;Typedef NODE *PNODE。
43 【正确答案】算法实现void func (PNODE h,int n){PNODE p=h,r,int *q,m;q=(int *)malloc(sizeof(int)*(n十1));//申请n+1个位置的辅助空间for(int i=0,i<n+1,i++)//数组元素初值置0*(q+i)=0;while(p->link!=NULL){m=p->link->data>0?p->link->data:-p->link->data;if(*(q+m)==0)//判断该结点的data是否己出现过{*(q+m)=1,//首次出现p=p->link;//保留}else//重复出现{r=p->link;//删除P->link=r->finkfree(r);}44 【正确答案】算法的时间复杂度为O(m),空间复杂度为O(n)。