贵州大学计算机学院研究生复试上机考试题目
贵州大学计算机考研831.840历年算法题及答案整理
1历年编程题
1.1递归阶乘
1.2结构体编程-求成绩高于平均成绩的学生学号
1.3打印杨辉三角
1.4统计单链表中等于给定值的结点数
1.5链式存储方法构建二叉树
1.6链表实现A交B
因为是回忆版,不确定题目是不是有序列表,或者题目有没有要求释放空间,或者不破坏原链表的结构,这些在做题时都需要注意,会影响到算法的实现。
无序求交集的写法。
1.7邻接矩阵转邻接表
1.8结构体编程-求工资最少的职工姓名
1.9一个不超过5位的正整数,编程实现数有多少位以及逆序输出这个数
1.10双向冒泡排序算法
1.11编程实现给定一个有向无环图,求图的最长路径,并估计时间复杂度
2015贵州大学831计算机考研真题
B、实参占用存储单元,形参是虚拟的,不占用存储单元。
C、只有当实参单元与其对应的形参单元同名时,才共占用一个存储单元。
D、形参值的改变会影响实参的值。 8、若有以下语句:
int a[3],*p=a; 则 &a[1]-p 的值是( )。
A、1
B、2
C、3
D、4
#include<stdio.h>
void main()
{
float average(float array[10]);
float score[10],aver;
int i;
printf(“input 10 scores:\n”);
for(i=0;i<10;i++)
scanf(“%f”,&score[i]);
B、main 函数必须出现在所有函数之后。一个 C 程序必须有且仅有一个 main 函数。
C、main 函数可以在任何地方出现。一个 C 程序必须有且仅有一个 main 函 数。
D、main 函数出现在固定位置,一个 C 程序可以有多个 main 函数。
3、已知 int i,a;,执行语句 i=(a=2*3,a*5),a+6; 后变量 i 的值是( )。
2、读下面程序,写出程序的输出结果 #include<stdio.h> void main() { int x; x = try(6); printf(“%d\n”,x); } int try(int n) { if(n>0) return (n*try(n-2)); else return (1); } 程序运行的结果为:
贵州大学计算机831真题答案(2016-2018年)(仅含答案解析)(补充版)
2016-2018年贵大831真题答案
特别说明:
1、本文档是贵州大学2014年度计算机考研831考题的参考答案整理,原试题在网络上可以搜索到,答案也是经过仔细斟酌,对一些难点进行了解释,备考中的考生可使用此文档作为参考答案,节约整理的时间。
2、本参考答案旺旺考研享有著作权,同时我们尊重原创,尊重知识,如果有使用者发现答案中有任何不解或纰漏,随时可以和我们练习,我们会第一时间处理。
12016年
1.1选择题
1.D
2.D
考察二叉树结点数。满二叉树的情况下,结点数最多。深度为6的二叉树,最多有2^k – 1个结点。
3.A
在二叉排序树树形状为每层一个结点时,此时查找比较次数最对。
4.C
5.C
6.D
这个题目考察的不够严谨,因为冒泡排序可能是优化的也可能是不优化的。相对来说D项最佳。
下面是每个排序的解释:
直接插入排序很明显,在完全有序的情况下每个元素只需要与他左边的元素比较一次就可以确定他最终的位置,因此直接插入与初始序列有关。希尔排序是基于直接插入的,所以关键字比较的次数与记录的初始排列次序有关。
选择排序是指扫描整个线性表,从中选出最小的元素,将它交换到表的前面。然后对剩下的字表采用同样的办法,所以关键字比较的次数与记录的初始排列次序无关。
折半插入排序,比较次数是固定的,与初始排序无关。
快速排序,初始序列不影响每次划分时的比较次数,都要比较n次,但是初始排序会影响划分的次数,所以会影响总的比较次数,有关;
归并排序在归并的时候,如果右路最小值比左路最大值还大,那么只需要比较n次,如果右路每个元素分别比左路对应位置的元素大,那么需要比较2*n-1次,所以与初始排序有关。
计算机考研面试题目及答案
计算机考研面试题目及答案
计算机考研面试是考生们进入硕士研究生阶段的重要关卡,在面试
过程中展示自己的计算机知识水平和解决问题的能力是至关重要的。
本文将为大家提供一些常见的计算机考研面试题目及答案,以供参考。
一、数据结构
1. 什么是数据结构?
数据结构是计算机中存储、组织和管理数据的方式,它涉及到数据
的逻辑结构和物理结构。
2. 请介绍常见的数据结构。
常见的数据结构包括数组、链表、栈、队列、树、图等。
3. 请介绍栈和队列的特点及应用。
栈是一种后进先出的数据结构,主要应用于函数的调用、表达式求
值等场景;队列是一种先进先出的数据结构,主要应用于排队、调度
等场景。
4. 请介绍二叉树的遍历方式。
二叉树的遍历方式包括前序遍历、中序遍历和后序遍历。
二、操作系统
1. 什么是操作系统?
操作系统是计算机系统中的核心软件,它管理和控制计算机硬件资源,提供给用户和其他应用程序一个方便的开发和运行环境。
2. 请介绍操作系统的功能。
操作系统的功能包括进程管理、内存管理、文件系统管理、设备管理等。
3. 请介绍进程和线程的区别。
进程是程序在计算机上的一次执行过程,具有独立的内存空间;线程是进程中执行的一个任务,多个线程可以共享同一进程的资源。
4. 请介绍死锁及如何避免死锁。
死锁是指两个或多个进程因争夺系统资源而陷入无限等待的状态。避免死锁可以采取资源分配策略、避免循环等措施。
三、计算机网络
1. 请介绍OSI七层模型。
OSI七层模型是计算机网络体系结构的标准,包括物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
贵州大学计算机考研《数据结构》考试真题
一、单项选择题
1.对于一个算法,当输入非法数据时,也要能作出相应的处理,这种要求称为()。
(A)、正确性(B). 可行性(C). 健壮性(D). 输入性
2.设S为C语言的语句,计算机执行下面算法时,算法的时间复杂度为()。
for(i=n-1;i>=0;i--)
for(j=0;j<i;j++) S;
(A)、n2(B). O(nlgn) (C). O(n) (D). O(n2)
3.折半查找法适用于()。
(A)、有序顺序表(B)、有序单链表
(C)、有序顺序表和有序单链表都可以(D)、无限制
4.顺序存储结构的优势是()。
(A)、利于插入操作(B)、利于删除操作
(C)、利于顺序访问(D)、利于随机访问
5.深度为k的完全二叉树,其叶子结点必在第()层上。
(A)、k-1 (B)、k (C)、k-1和k (D)、1至k
6.具有60个结点的二叉树,其叶子结点有12个,则度过1的结点数为()(A)、11 (B)、13 (C)、48 (D)、37
7.图的Depth-First Search(DFS)遍历思想实际上是二叉树()遍历方法的推广。
(A)、先序(B)、中序(C)、后序(D)、层序
8.在下列链队列Q中,元素a出队的操作序列为()
(A)、p=Q.front->next; p->next= Q.front->next;
(B)、p=Q.front->next; Q.front->next=p->next;
(C)、p=Q.rear->next; p->next= Q.rear->next;
2019年贵州大学831计算机考研真题
1 16 18 12 12
三、简答题 1.写出操作线性结构的 5 种方法。 2.问实现树的深度优先和广度优先分别用什么数据结构作为辅助。 3.已知二叉树的先序遍历为 AB##CDE###F##,其中#表示 NULL,画出该二叉树。 4.已知待排序的一组数为 6,3,7,2,1,8,9.要求写出使用快速排序第一趟的结果, 选择排序第二趟的结果,简单插入排序第三趟的结果。 5.写出适用于二分查找的数据结构,并写出时间复杂度。
D. 5
2.在一棵度为 3 的树中,有 2 个度为 3 的结点,1 个度为 2 的结点,3 个度为 1
2022年贵州大学计算机840考研模拟试题(A)831试题及答案
贵州大学研究生入学考试模拟卷(A)
(所有答案必须答在专用答题纸上,否则答案无效)
考试科目名称:程序设计与数据结构考试科目代码:840
一、选择题(单项选择,25个小题,每题2分,共50分)
1、关于函数,下列叙述正确的是___。
A.函数必须要有return语句
B.一个函数中可以定义其它的函数
C.main()函数可以被所在程序的其他函数调用
D.一个C程序只能有一个main()函数
2、设有 float a=12.5,则表达式(a+1/2)的值是_____。
A. 13.0
B. 13
C. 12.5
D. 13.5
3、能正确地用逻辑关系表示: 10<a<15 的C语言表达式是______。
A. 10<A<15
B. 10<a && a<15
C. 10<a||a< 15
D. 10<=a && a<=15
4、假设变量已定义,下面正确的赋值语句是______。
A.j++ B.x=y=1; C.x=4*y=2; D.x=float m;
5、执行以下程序段后的b的值是___。
int a=5,b=6,c=1,x=2,y=3,z=4;
c=(a=c>x)&&(b=y>z);
A.0 B.1 C.6 D.5
6、对于 int i,a[7]={5,3,1,8,3,5,6};,能正确访问所有数组元素的for循环是:
A. for(i=0;i>=7;i--) printf("%d\n",a[6-i]);
B. for(i=0;i>7;i++) printf("%d\n",a[6-i]);
贵州大学计算机科学与技术专业考研
贵州大学计算机科学与技术专业考研
贵州大学计算机科学与技术学科建于20世纪70年代,1972年起开始招收计算机软件专业本科学生,1986年成立计算机科学系。在校内,计算机科学与技术学科涵盖:计算机科学系、计算机软件与理论研究所、计算机网络研究所、计算机网络中心、计算中心等单位。1983年开始招收硕士研究生(授基础数学硕士学位),1995年获批“计算机软件与理论”硕士授予权,1998年获批“计算机应用技术”硕士授予权,2000年获批“计算机软件与理论”博士授予权。2003年获批“计算机软件工程领域”工程硕士授予权。1992年,贵州省人民政府批准计算机科学与技术学科为省重点学科。目前,本学科在校本科学生近1000人、硕士研究生近70人、博士研究生4人。
经过30年的发展,我校本学科形成了应用逻辑与人工智能理论基础、计算机密码与信息安全技术、可计算性与计算复杂性、计算机网络及其应用技术、计算机网络及其应用技术、数据库技术、多媒体技术、软件分析、计算机控制技术、中文信息处理、计算机仿真技术等研究方向,它们分属于人工智能、网络与信息安全、理论计算机科学、数据与信息处理、计算机控制与工业自动化等更为广泛的学科大类方向,并且相互之间在研究内容上存在一定的交叉与覆盖。
计算机密码与信息安全技术、软件分析、人工智能、计算机网络及其应用技术、数据库技术、多媒体技术已经形成贵州大学计算机与技术学科的特色方向,硕士研究生培养已具备一定规模。其研究成果已达到国内先进水平,部分成果已达到国际先进水平。
具有发展前景和优势的方向有:中文信息处理、计算机控制技术。
计算机考研复试题目及答案
计算机考研复试题目及答案
### 计算机考研复试题目及答案
#### 题目一:数据结构
问题:请解释什么是二叉搜索树,并说明其基本操作。
答案:
二叉搜索树(Binary Search Tree,简称BST)是一种特殊的二叉树,它具有以下性质:
1. 若任意节点的左子树不为空,则左子树上所有节点的值均小于它的节点值。
2. 若任意节点的右子树不为空,则右子树上所有节点的值均大于它的节点值。
3. 任意节点的左、右子树也分别为二叉搜索树。
4. 没有键值相等的节点。
二叉搜索树的基本操作包括:
- 插入操作:将一个新值插入到树中,保持树的有序性。
- 查找操作:在树中查找一个给定值的节点。
- 删除操作:删除树中具有特定值的节点,并重新调整树以保持其性质。
#### 题目二:操作系统
问题:请简述死锁的必要条件,并说明如何避免死锁。
答案:
死锁是指多个进程在执行过程中因争夺资源而造成的一种互相等待的状态,若无外力作用,这些进程都无法继续执行。死锁的必要条件包括:
1. 互斥条件:至少有一个资源不能被共享,只能由一个进程使用。
2. 占有和等待条件:至少有一个进程至少占有一个资源,并且等待获取其他进程占有的资源。
3. 不可剥夺条件:已分配给一个进程的资源,在未使用完之前,不能被其他进程强行剥夺。
4. 循环等待条件:存在一个进程序列,使得每个进程都在等待下一个进程所占有的资源。
避免死锁的方法:
- 资源分配策略:如银行家算法,确保分配资源时不会导致死锁。
- 资源有序分配:确保所有进程按照相同的顺序请求资源。
- 避免循环等待:通过资源的有序分配来打破循环等待的条件。
计算机复试面试题目及答案
计算机复试面试题目及答案
一、介绍
在计算机专业的复试面试中,面试官通常会提问一系列与计算机相
关的问题,以评估考生的专业知识和技能。本文将针对计算机复试面
试常见的题目进行总结,并针对每个题目提供相应的答案,希望能帮
助考生顺利通过复试。
二、数据结构与算法
1. 介绍什么是数据结构?
数据结构是指数据在计算机中的组织方式,包括线性结构、树形结构、图形结构等。它与算法紧密相关,是计算机科学的基础。
2. 请简述线性表的种类以及各自的特点。
线性表包括顺序表和链表。顺序表是一种使用连续的存储空间存储
数据的线性表,它的特点是随机访问效率高,但插入和删除元素的效
率较低。链表是一种使用不连续的存储空间存储数据的线性表,它的
特点是插入和删除元素的效率较高,但访问元素的效率较低。
3. 请简述树是什么以及树的应用场景。
树是一种非线性的数据结构,它由若干个节点组成,节点之间通过
边连接。树的应用场景包括文件系统的组织、搜索引擎的索引结构等。
4. 请解释什么是时间复杂度和空间复杂度。
时间复杂度是描述算法运行时间与输入规模之间的增长关系,用大
O表示。空间复杂度是描述算法所需的额外存储空间与输入规模之间
的增长关系。
5. 请简述常见的排序算法以及它们的时间复杂度。
常见的排序算法有冒泡排序、插入排序、选择排序、快速排序、归
并排序等。它们的时间复杂度分别是O(n^2)、O(n^2)、O(n^2)、
O(nlogn)、O(nlogn)。
三、操作系统
1. 请简述进程与线程的区别。
进程是一个具有独立功能的程序在一个数据集合上的一次运行过程,线程是进程的一个子任务,多个线程共享进程的资源。
计算机考研复试面试题库及答案
计算机考研复试面试题库及答案
一、专业基础知识
1. 计算机组成原理
题目:简述冯·诺伊曼体系结构的基本原理。
答案:冯·诺伊曼体系结构是一种计算机系统的设计原则,也是现代计算机的基础。它的基本原理包括以下几点:
- 存储程序:计算机通过将指令和数据存储在同一个存储器中,实
现了程序的自动执行。
- 二进制系统:计算机使用二进制表示数据和指令,简化了计算机
系统的设计和实现。
- 指令流水线:计算机通过将指令的执行过程划分为多个阶段,并
同时进行不同指令的执行,提高了计算机的执行效率。
- 内存层次结构:计算机通过多层次的存储器结构,包括高速缓存、内存和外部存储器,提供了不同速度和容量的存储器选择。
2. 算法与数据结构
题目:什么是二叉搜索树?如何实现插入和删除操作?
答案:二叉搜索树(BST)是一种特殊的二叉树,满足以下条件:- 对于树中的每个节点,其左子树的所有节点的值小于该节点的值,右子树的所有节点的值大于该节点的值。
- 对于树中的每个节点,其左子树和右子树也是二叉搜索树。
实现插入操作的步骤:
- 从根节点开始,将待插入的值与当前节点的值进行比较。
- 如果待插入的值小于当前节点的值,且当前节点的左子树为空,
则将待插入的值作为当前节点的左子节点。
- 如果待插入的值大于当前节点的值,且当前节点的右子树为空,
则将待插入的值作为当前节点的右子节点。
- 如果待插入的值小于当前节点的值,且当前节点的左子树不为空,则将当前节点更新为其左子节点,重复上述步骤。
- 如果待插入的值大于当前节点的值,且当前节点的右子树不为空,则将当前节点更新为其右子节点,重复上述步骤。
贵州大学计算机基础考试题库2
一. 单项选择题
1、计算机科学理论的奠基人是( )
错误!未找到引用源。A、查尔斯.巴贝奇
错误!未找到引用源。B、图灵
错误!未找到引用源。C、阿塔诺索夫
错误!未找到引用源。D、冯.诺伊曼
2、下列说法正确的是( )
错误!未找到引用源。A、在著名的"人机大战"中,世界象棋冠军下棋输给电脑,说明电脑比人聪明
错误!未找到引用源。B、随着社会信息化与计算机的发展,导致了社会生产方式和生活方式的深刻变革
错误!未找到引用源。C、因为计算机不能完全模拟人脑的功能,故电脑没有多大用处
错误!未找到引用源。D、计算机已经可以模拟人脑的功能,故以后会取代人类
3、下面( )组设备包括输入设备,输出设备和存储设备
错误!未找到引用源。A、磁盘,鼠标器,键盘
错误!未找到引用源。B、鼠标器,绘图仪,打印机
错误!未找到引用源。C、CRT,CPU,ROM
错误!未找到引用源。D、磁带,打印机,激光打印机
4、有些高级语言源程序在计算机执行时,采用的是解释方式。在解释方式下,源程序由()边翻译边执行。
错误!未找到引用源。A、翻译程序
错误!未找到引用源。B、解释程序
错误!未找到引用源。C、操作系统
错误!未找到引用源。D、汇编程序
5、下列四条叙述中,正确的一条是( )
错误!未找到引用源。A、PC机使用时断电,SRAM中存储的信息不会丢失
错误!未找到引用源。B、内存储器中的数据可直接被CPU处理
错误!未找到引用源。C、PC机使用时断电,DRAM中存储的信息不会丢失
错误!未找到引用源。D、外存储器中的信息可以直接被CPU处理
6、一台计算机必须具备的输入设备是( )。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
注意事项:
1、请勿使用书籍、U盘、光盘等任何资料。
2、考试时间:2小时。
3、文件一定要保存在E盘,其余盘重新启动后会还原。
程序设计,用C语言完成(75分)
1、从键盘上输入一个字符串,将该串分为数字、字母、其他字符三个部分输出,例如:
输入:Thdad29#@12aH;77
输出:ThdadaH
291277
#@;
2、对任意正整数N,求XN,,要求运算的时间复杂度为O(logN)。例如X30,有X30=X15*X15,X15=X7*X7*X,X7=X3*X3*X,X3=X*X*X,共7次乘法运算完毕。
3、有N个小朋友围成一圈玩击鼓传花游戏,将小朋友编号为1~N,从1号开始传花,每次传3个,拿到花的小朋友表演节目后退出,任给N,问最后一个表演的小朋友编号是多少。
例如:5个小朋友,从1号开始传花,第一个表演的是3号,第二个表演的是1号,第三个表演的是5号,第四个表演的是2号,最后一个表演的是4号。
数据库(25分)
4、设某物流系统有如下表:
仓库表(仓库号,仓库名,地点)
货物表(货物号,货物名,单价)
出入库表(仓库号,货物号,出入库数量,时间)
要求:
(1)使用SQL语句建立以上三张表(需要主键、外键)
(2)使用SQL语句查询:单价高于100元的货物名、出入库总次数、总数量
注:不需要在电脑上建表,仅需要写出SQL语句,保存到文本文件中即可
2016年的:
程序设计,可使用C、C++、Java或C#完成(75分)
1、从键盘输入一个字符串(可能含数字、字母、其他可见字符),输出出现频率最高的英文字母及次数,忽略字母的大小写(如大写A 和小写a均视为a)。例如:
输入:There are 10,000 soldiers in the town.
输出:e 5
4、某学院管理系统有如下表:
课程表(课程号,课程名,任课老师姓名,学时数)
学生表(学号,学生姓名,性别,年级)
选课表(课程号,学号,成绩)
要求:
(1)使用SQL语句建立以上三张表(需要主键、外键)
(2)建立视图:对于每门课程,列出课程号,课程名以及不及格学生人数
注:不需要在电脑上建表,仅需要写出SQL语句,保存到文本文件中即可
1.视图的作用是什么?
2.关系数据库的作用?
3.数据库设计的基本步骤?
4.数据库安全性的常用方法和常用技术?
贵大数据库笔试:
选择题都比较简单,知识面比较杂,一般的复习题的知识能复习到就
行。
简答有:视图的优点,数据库恢复的方法和技术,
有个给定关系画ER图,比较简单。
给定一个表,按要求写各种查询语句,有用到集合什么的,还有要求用关系代数写语句,这些简单的基础一定要掌握好。
最后就是求一个函数的最小依赖集和函数的闭包。不理解的人一定要好好弄清算法,以及求一个关系中的码和候选键什么的。
再次提醒各位去贵大复试的,体检的时候一定要先去抽血和胸透,超级超级慢,人再多也要先排这两个,其余的就很快了。如果你知道校医院,可以自己提前去,没必要按时集合。
上机测试:
首先提醒,C语言和面向对象的比如C++一定都要复习,因为两个都考。虽然不太难,没复习到就傻眼了。
C:一个数如果是素数就输出它,如果不是素数则输出比它大的最小素数
字符串的转换,如果是字符,则将Ascii码值加3输出(无论大小写),比如输入abCD
输出deFG,非字母则原样输出
给出了一个链表结点的结构体,输入四个数(好像是四个),使他们从小到大插入到链表中并且输出。
面向对象:
圆类,矩形类,什么的,给定值求面积。还有继承关系什么的。总之比较简单的典型的课后题。最后一个题没太认真看,所以忘记了..给的时间不多,一个半小时要全做完,主要看算法思想,没必要一定调通,所以千万不要浪费时间在小细节上。
综合面试:
分为2个组,每组6个导师。先自我介绍,多说自己的优点以及自己
擅长的领域,因为他们会随着你的介绍来问你问题,最好是你带着他们走,不要不说话,你不说话他们就会自主问…那就太随机了。比如我说自己做过哪些课程设计,他们就会挑感兴趣让你细说,以及谈到了毕业设计也问了很多,还问了我想学习的方向,比如数据挖掘,导师就问我对大数据有什么认识等等。
英语面试:
两个外院的老师,比较随和的。三个人一组,进去每人一两分钟自我介绍,然后抽一个话题,三个人自由讨论,不要像回答问题那样一个人一个人答,而是三个人讨论,像聊天一样。老师同时会看你的交际能力和表达能力以及临场反应能力。实在不会的时候,中英文交叉也行…
1。第一大题是填空,好像有20个空,每空一分,大概就是问些数据库系统构成,数据恢复,完整性约束类的东西
2。第二大题是8个简答题,每个五分。问题记得有:数据库故障分为哪些,什么会破坏数据;关系模型的功能等,都是些基本概念,重点很容易在书上找到,不是很偏。就是量太大了。
3。第三大题综合题,有三个小题,感觉很简单也比较基础,大概就是把题意转化为E-R图,再转成关系数据模型,用关系表达式和SQL 语句进行一些操作,考到了聚集函数。
第一部分是C语言题40分(三选二) 1。字符串合并去掉相同元素再排序。2。实现一个递归的条件函数。3。TCP/IP的一个程序设计。。第二部分有两个题60分:1。面向对象程序设计:设计一个类似抢车位的游戏,有计时计费,车位标记等功能
2。数据库设计:建几个表连接查询排序计算等。。。SQL语法能考的都考了
值得注意的是上机类似于四级考试的限时,第一部分要求40分钟内完成,完成后才能做第二部分。
下午是英语复试,没有单独的听力考试,面试和听力都是一起进行打分的:先是自我介绍,一般老师都会在你说几句后就打断,可能是模