中科大计算机考研2006-2012机试试题
2012年硕士研究生计算机统考408考研真题及答案
A. 10
B. 20
C. 32
D. 33
5.对有 n 个结点、e 条边且使用邻接表存储的有向图进行广度优先遍历,其算法时间复杂度是
A. O(n)
B. O(e)
C. O(n+e)
D. O(n*e)
6.若用邻接矩阵存储有向图,矩阵中主对角线以下的元素均为零,则关于该图拓扑序列的结论是
A. 存在,且唯一
B. 存在,且不唯一
A. 程序计数器
B. 程序状态字寄存器
C. 通用数据寄存器
D. 通用地址寄存器
25.下列关于虚拟存储器的叙述中,正确的是
A. 虚拟存储只能基于连续分配技术
B. 虚拟存储只能基于非连续分配技术
C. 虚拟存储容量只受外存容量的限制
D. 虚拟存储容量只受内存容量的限制
26.操作系的 I/O 子系统通常由四个层次组成,每一层明确定义了与邻近层次的接口,其合理的层次组织排列顺序 是
A. 不管系统是否支持线程,进程都是资源分配的基本单位
B. 线程是资源分配的基本单位,进程是调度的基本单位
C. 系统级线程和用户级线程的切换都需要内核的支持
D. 同一进程中的各个线程拥有各自不同的地址空间
32.下列选项中,不能改善磁盘设备 I/O 性能的是 6
D. 360ms
A. 重排 I/O 请求次序
13.假定编译器规定 int 和 short 类型长度占 32 位和 16 位,执行下列 C 语言语句 unsigned short x = 65530; unsigned int y = x; 得到 y 的机器数为
3
A. 0000 7FFA
2012 年全国硕士研究生入学统一考试—计算机专业基础综合试题
2006-2012年真题
西南交通大学信息科学与技术学院2014年计算机/软件工程/信息安全硕士研究生入学考试840 数据结构与程序设计/ 959 数据结构之(免费资料,请勿掏钱购买!谁掏钱,我跟谁急)Powered by 未休矣试题代码: 959 试题名称:数据结构机密★启用前西南交通大学2012年全日制硕士研究生入学考试试卷试题代码:959试题名称:数据结构考试时间:2012年1月考生请注意:1.本试题共4题,共6页,满分150分,请认真检查;2.答题时,直接将答题内容写在考场提供的答题纸尚,答在试卷上的内容无效;3.请在答题纸上按要求填写试题代码和试题名称;4.试卷不得拆开,否则遗失后果自负。
一、单项选择题(本大题共25题,每题2分,共50分)1.以下属于数据的逻辑结构的是【】A.顺序表 B.哈希表 C.线性表 D.单链表2.计算机所处理的数据一般具有某种内在联系,这是指【】A.数据与数据之间存在某种关系B.数据元素与数据元素之间存在某种关系C.元素内部存在某种结构D.数据项与数据项之间存在某种关系3.线性表是具有n个【】的有限序列(n≥0)。
A.表元素B.字符C.数据元素D.数据项4.若某线性表最常用的操作是存取任意指定序号的元素和在表尾进行插入和删除,则选用【】的存储方式最节省时间。
A.顺序表B.双链表C.带头结点的双循环链表D.单循环链表5.若长度为n的线性表采用顺序存储结构,在第i个位置插入一个新元素的算法的时间复杂度为【】。
A.O(0)B. O(1)C. O(n)D. O()6.如果对线性表的运算只有两种,即删除第一个数据元素,在最后一个数据元素的后面插入一个新数据元素,则最好使用【】A.只有表头指针没有表尾指针的单循环链表B.只有表尾指针没有表头指针的单循环链表C.非循环双链表D.顺序表7.对于一个线性表,既要求能够较快速地进行插入和删除,又要求存储结构能反映数据元素之间的逻辑关系,则应该采用【】A.顺序存储方式B.链式存储方式C.随机存储方式D.以上均可以8.用单链表表示的链队列的链表指针在链表的【】A.链头B.链尾C.链中D.都不是9.对于循环队列【】A.无法判断队列是否为空B.无法判断队列是否为满C.队列不可能为满D.以上说法都不对10.一个栈的进栈序列为A、B、C、D、E,则栈的不可能的输出序列是【】A.EDCBAB.DECBAC.DCEABD.ABCDE11.循环队列的最大容量为M,则队空的条件是【】A.rear==frontB.(rear+1)%M==frontC.rear+1==frontD.(rear-1)%M==front12.【】是C语言中串“abcd321ABCD”的子串。
中科大研究生算法试卷
中科大研究生算法试卷2015年7.在异步环上,一个O(n^2)的leader选举算法按顺时针单向发送消息,假设只有最大的标识符节点可以当选为leader,则当环上标识符次序为_________时该算法发送的消息数量最多。
A 0,1, …, n-1 随机b逆时针n-1,n-2,…,0C 顺时序0,1,…, n-1 d 顺时针n-1,n-2,…,08.设正整数d1,d2,…,dn是n个结点的标识符集合,x = min(d1,d2,…,dn),y = max(d1,d2,…,dn),则同步环上非均匀的leader选举算法的时间复杂性是_______A O(n) b O(xn) c (yn) d O(nlogn)9.在下述因素中,已知有3个阻碍分布式系统了解系统全局状态,与全局状态无关的是____A 非及时的通信b 相对性影响c中断d算法的正确性10. 下述说法错误的是___A 异步系统中的消息延迟是不确定的B 分布式算法的消息复杂性是指在所有合法的执行上发送消息总数的最大值C 在一个异步算法中,如果不存在错误,则算法的执行只取决于初始配置D 分补水系统终止是指系统中所有结点处于终止状态,且没有消息在传输二.简要回答下述问题(55分)1 构造一个16节点的环,使其高度对称,并给出所有序等价的连续片段。
2 已知事件e1,e2,e3和e4的向量时戳分别为(2,3,0,0),(1,2,0,0),(0,0,1,1),(3,6,4,2),请找出所有因果关系的事件对。
3若将消息复杂度为O(nlgn)的异步环选举算法(在阶段1向节点的2邻居发送Prob消息)修改为只向其中一个方向发送Prob消息,请问修改后算法的消息复杂度是多少?如何对其做进一步的修改使得消息复杂度仍然为O(nlgn)。
4.对于一个优化问题π,最佳可达性能比为Rmin(π)(定义如下)分别为何值时,问题π易于近似和难于近似?5 装箱问题是将n件物品放入尽可能少的若干个容量为1的箱子中。
中科大计算机考研真题
中科大计算机考研真题中科大计算机考研是众多计算机科学与技术专业学生追求的目标之一。
在这道真题中,我们将回顾一些历年的考题,并提供一些解析和思路,以帮助考生更好地准备考试。
本文共分为三个主题部分:操作系统、数据库和算法与数据结构。
一、操作系统1. 多道批处理系统是怎样实现作业调度的?请简要描述操作系统的作业调度过程。
解析:多道批处理系统是指一台计算机同时处理多个作业,而不需要人工干预。
作业调度是指操作系统根据一定的算法,决定当前执行哪个作业。
作业调度过程一般包括以下几个步骤:首先,操作系统根据作业的优先级和提交时间等信息,为每个作业分配一个初始的调度优先级。
其次,对于多个处于就绪状态的作业,操作系统根据调度算法,选择一个作业进行执行。
常见的调度算法有先来先服务(FCFS)、短作业优先(SJF)、最高响应比优先(HRRN)等。
最后,当一个作业执行完成或者处于阻塞状态时,操作系统会根据调度算法重新选择一个作业进行执行,直到所有作业完成。
2. 请解释死锁的概念,并说明死锁的产生条件和解决方法。
解析:死锁是指多个进程在竞争有限资源时,由于彼此之间的互斥和请求资源的非预期顺序等原因,导致都在等待对方释放资源,从而导致系统无法继续执行。
死锁的产生条件主要包括:互斥条件:进程对所请求的资源进行排他性控制,即一次只能有一个进程使用该资源。
持有和等待条件:进程已经持有了一个资源,但又请求额外的资源,而这些资源又被其他进程所占有。
不剥夺条件:其他进程不能强行剥夺一个进程已经持有的资源,只能由进程自己释放。
环路等待条件:多个进程之间形成了一个循环等待资源的关系。
死锁的解决方法主要有以下几种:鸵鸟算法:忽略死锁的存在,不进行处理。
适用于死锁发生概率极低的系统。
死锁检测与恢复:通过系统资源分配图等方法,检测死锁的发生,并进行资源回收和进程终止等操作,使系统恢复正常状态。
死锁预防:通过破坏死锁产生的四个条件之一,预防死锁的发生。
2012年中国科学院研究生院计算机软件基础考研试题
中国科学院研究生院2012年招收攻读硕士学位研究生入学统一考试试题科目名称:计算机软件基础考生须知:1.本试卷满分为150分,全部考试时间总计180分钟。
2.所有答案必须写在答题纸上,写在试题纸上或草稿纸上一律无效。
第一部分:数据结构(共70分)一、单选题(每题 2 分,共20分)1.下面关于线性表的叙述错误的是【】。
(A) 线性表采用顺序存储必须占用一片连续的存储空间(B) 线性表采用链式存储不必占用一片连续的存储空间(C) 线性表采用链式存储便于插入和删除操作的实现(D) 线性表采用顺序存储便于插入和删除操作的实现2. 栈和队列的共同特点是【】。
(A) 只允许在端点处插入和删除元素(B) 都是先进后出(C) 都是先进先出(D) 没有共同点3. 以下数据结构中【 】是非线性结构。
(A) 队列(B) 栈(C) 线性表(D) 二叉树4. 树最适合用来表示【】。
(A) 有序数据元素(B) 无序数据元素(C) 元素之间具有分支层次关系的数据(D) 元素之间无联系的数据5. 二叉树的第k层的结点数最多为【 】。
(A)2k-1 (B)2k+1 (C)2k-1 (D) 2k-16.若有18个元素的有序表存放在一维数组A[19]中,第一个元素放A[1]中,现进行二分查找,则查找A[3]的比较序列的下标依次为【 】。
科目名称:计算机软件基础 第 1 页 共 5 页( A) 1,2,3 (B) 9,5,2,3(C) 9,5,3 (D) 9,4,2,37. 对n个记录的文件进行快速排序,所需要的辅助存储空间大致为【 】。
(A) O(1)(B) O(n) (C) O(1og2n)(D) O(n2)8.设有6个结点的无向图,该图至少应有【】条边才能确保是一个连通图。
(A)5 (B)6 (C)7 (D)89.设哈夫曼树中的叶子结点总数为m,若用二叉链表作为存储结构,则该哈夫曼树中总共有【 】个空指针域。
(A) 2m-1 (B) 2m (C) 2m+1 (D) 4m 10.设某棵二叉树的中序遍历序列为ABCD,前序遍历序列为CABD,则后序遍历该二叉树得到序列为【】。
中科大机试 面试(回忆版)
中科大11系(计算机)复试以下为我在网上找的一些复试的材料,但一时疏忽未给出转载的链接,大家主要看的是机试的题目。
若有其他的资料,欢迎在群里共享!==================================================== 06年1.今天是06,4.4,06科大复试刚过,洋洋洒洒多半年过去了,有心留些手记给07级的科大考生,也算略为宽宽心.我是06年外校报考中科大计算机11系的,不是跨专业,但是本科学校一般.科大的老师看起来很朴实,实干.4.1日八点开始在西校区电三楼计算机系复试.7:45,招生办老师临阵下达保证书,考生必须提交后方可面试.内容略如下:(1)在计划内录取的考生保证在上研期间不能够自费出国(公费不在此之列),不可以无故退学,否则拒绝办理手续.学生签字.(2)在计划外录取的考生保证在上研期间,每年学费8000.学生签字.(3)与香港城市大学联合办学,第一年在科大校区学习,其他在苏州校区.每月补助2000RMB.学生签字.三项没有多加解释,第三项可以发相关的文件细读,但是我没有同意.个人认为既然每月补助2000那么被收的费用肯定远比2000多,没有细想,匆忙开始了上机考试.8:00在电三楼机房开始上机考试.先发条子带用户名,密码,等11:30分服务器自动关闭,学生在条子上签字,算是上机的身份.打开z盘映射盘,解压data文件夹后有7道题目,VC,TC都可以,都涉及文件读写input*.txt,output*.txt.第一道,读int矩阵文件,将之转置后输出.简单.第二道,给出四个[年,月],判断此月有多少天.题目给出了闰年判断方法的伪代码.第三道,给出一些标识符,判断合法标识符有多少个.(与C语言中标识符定义一致.)第四道,给出无向图连接矩阵,求各个连同分量.第五道,给出一个整数分解成尽可能多的连续整数的和.例如第六道,给出带括号的四则运算表达式,要求给出逆波兰式第七道,递归列出的所有条目.例如m=3,n=4时,结果为4,3,24,3,14,2,13,2,1题目必须调试无错,保留源代码和exe文件.11:30上机完毕.1:30,面试开始.16:00,进入六楼面试室A自己先报个号码,女老师从资料中按号码抽题.我选中的是篇翻译,其实就是口译一段300字左右的passage,我选的内容涉及看门狗软件.之后,女老师依次问了如下问题,用英语.What university are you coming from?What courses have you learned?Name all your courses you have learned.Which course do you like most?List the content you know about that course.之后,旁边的男老师用汉语发问:初试多少分?大学入学成绩?之后就是没话找话凑时间了.16:07面试室B.三个老师面前各有一摊条子,上面有短的题目.第一个,抽中了”什么是移动IP?基站到用户环线之间可以发送么(记不清了)”;老师见我为难,重抽.“二级转换器的本质是什么?”第二个,我抽中了”列举命题逻辑中常使用的三种连接词,并且说明其意义.”第三个,”是不是任何范式都可以表示成子句?为什么?”16:12走出面试室.24.月4日.10:40:电三六楼张贴栏贴出录取名单,没有成绩,没有排名,只有姓名,准考证号计划内学生72计划外29超过315(政治50,英语50,数学(专业课1)90,专业课290)复试线,总共来面试的有166人.分三组,每组各有一半错开上下午.其中面试(口语+基本素质+专业知识)==100分机试==200分.专业课1+专业课2+复试=600总分,最终评定是看总分的.下午第一题,统计一个字符串当中有多少字母、数字、空格和其它字符;第二题,给你一个10进制数,要你输出8进制数;第三题,给你一个数,要求你求出这个数与其反序数的和相加多少次才可以得到回文字,比方说给你5656+65=121,是回文字,所以输出1;给你15681568+8651=10219,不是回文字,继续,10219+91201=101410,不是回文字,继续,101410+014101=115511,是回文字,结束,输出3;第四题,给你一个数列,求出最大子序列之和;第五题,给你几个整数,求出最大的组合数,比如:12345678最大的组合是:78456123;第六题,记不清楚了,是关于图的;俺就这题没来得及做。
11、【计算机】计算机2012年真题及解析
钻石卡高级辅导系统——全程、全方位、系统化解决考研所有问题,成功率趋近 100% 万学教育官方网址:
4
钻石卡高级辅导
„-‟、 „*‟、 „(‟、„(‟、„+‟依次入栈,此时,栈中元素个数为 5,分别为:- * ( ( + ; „+‟出栈,栈中元素个数为 4,分别为:- * ( ( ; „)‟入栈,与栈顶元素„(‟配成一对,都出栈,此时,栈中元素个数为 3,分别为:- * ( ; „/‟入栈,栈中元素个数为 4,分别为:- * ( / ; „/‟出栈,栈中元素个数为 3,分别为:- * ( ; „-‟入栈,栈中元素个数为 4,分别为:- * ( - ; „-‟出栈,栈中元素个数为 3,分别为:- * ( ; „)‟入栈,与栈顶元素„(‟配成一对,都出栈,此时,栈中元素个数为 2,分别为:- * ; „*‟出栈,栈中元素个数为 1:- ; „-‟出栈,栈空; „+‟入栈,栈中元素个数为 1:+ ; „+‟出栈,栈空; 根据以上分析可知,在中缀向后缀转换过程中,栈中操作符个数最多有 5 个,选 A。 3. 若一棵二叉树的前序遍历序列为 a、e、b、d、c,后序遍历序列为 b、c、d、e、a,则根结点的孩子结点 A. 只有 e 【答案】A 【解析】题中已知,二叉树的前序遍历序列为 a、e、b、d、c,后序遍历序列为 b、c、d、e、a,则可确定二叉树的根节点为 a。 前序遍历访问次序为:访问根节点;前序遍历左子树;前序遍历右子树。从而可以确定,e 为左子树或右子树的根节点,即根节点 a 的孩子结点。 ① 假设 e 为左子树根结点,则根据后序遍历结果可知,b、c、d 一定在左子树上,且以 e 为根节点,所以,b、c、d 不可能是 a 的孩子结点。 ② 若 e 为右子树根节点,根据前序遍历结果可知,此二叉树没有左子树,故只有 e 是 a 的孩子结点。 4. 若平衡二叉树的高度为 6,且所有非叶结点的平衡因子均为 1,则该平衡二叉树的结点总数为 : B. 有 e、b C. 有 e、c D. 无法确定
中科院硕士研究生入学考试2006高等代数试题解答
中科院2006年硕士研究生入学考试《高等代数》试题.1.(16分)已知,,αβγ为实数,求n nA αβγαβγα⨯⎛⎫ ⎪⎪=∈ ⎪ ⎪⎝⎭的行列式的值.2.(16分)线性方程组111122*********,111,221,000n n n n n n n n n a x a x a x a x a x a x a x a x a x ---+++=⎧⎪+++=⎪⎨⎪⎪+++=⎩的系数矩阵为11121212221,11,21,n nn n n n a a a a a a A a a a ---⎛⎫⎪⎪= ⎪⎪ ⎪⎝⎭. 设()1,2,,jMj n = 是在矩阵A 中化去第j 列所得到的1n -阶子式.求证:⑴()()112,,,1n n M M M --- 是方程组的一个解;⑵如果A 的秩为1n -,那么方程组的解全是()()112,,,1n n M M M --- 的倍数.3.(16分)若α为一实数,试计算1lim 1nn nn αα→+∞⎛⎫ ⎪⎪⎪ ⎪⎝⎭. 4.(18分)设a 为实数,10010011a aA a ⨯⎛⎫⎪⎪=∈ ⎪ ⎪⎝⎭,求50A 的第一行元素之和.5.(18分)若向量()12,,,2s s ααα> 线性无关,讨论12231,,,,s s s αααααααα-++++ 线性相关性.6.(18分)已知二次曲面方程2222224x ay z bxy xz yz +++++=可以经过正交变换 x x y P y z z '⎛⎫⎛⎫ ⎪ ⎪'= ⎪ ⎪ ⎪ ⎪'⎝⎭⎝⎭化为椭圆柱面方程2244y z ''+=.求,a b 的值和正交矩阵P . 7.(16分)设有实二次型()Tf x x Ax =,其中T x 是x 的转置,A 是33⨯实对称矩阵并满足以下方程:3261160A A A I -+-=.试计算()1m ax m ax Ax fx =.其中2222123xx x x =++,第一个极大值是满足以上方程的所有实对称矩阵A 来求.8.(16分)20062006A ⨯∈是给定的幂零阵(即:存在正整数p 使得0p A =而10p A -≠),试分析线性方程()20060Ax x =∈ 非零独立解个数的最大值和最小值.9.(16分)设f 是有限维向量空间V 上的线性变换,且n f 是V 上的恒等变换,这里n 是某个正整数.设(){}|W v V f v v =∈=。
计算机水平考试初级程序员2006年下半年下午真题
计算机水平考试初级程序员2006年下半年下午真题(总分:120.00,做题时间:150分钟)一、试题一至试题三是必答题(总题数:3,分数:45.00)1.试题一(共 15 分)阅读以下说明和算法,完善算法并回答问题,将解答写在答题纸的对应栏内。
[说明] 假设以二维数组G[1..m,1..n]表示一幅图像各像素的颜色,则G[i,j]表示区域中点(i,j)处的颜色,颜色值为0 到k 的整数。
下面的算法将指定点(i0,j0)所在的同色邻接区域的颜色置换为给定的颜色值。
约定所有与点(i0,j0)同色的上、下、左、右可连通的点组成同色邻接区域。
例如,一幅8×9 像素的图像如图1-1 所示。
设用户指定点(3,5),其颜色值为0,此时其上方(2,5)、下方(4,5)、右方(3,6)邻接点的颜色值都为0,因此这些点属于点(3,5)所在的同色邻接区域,再从上、下、左、右四个方向进行扩展,可得出该同色邻接区域的其他点(见图1-1 中的阴影部分)。
将上述同色区域的颜色替换为颜色值7 所得的新图像如图1-2 所示。
[算法] 输入:矩阵 G,点的坐标(i0,j0),新颜色值newcolor。
输出:点(i0,j0)所在同色邻接区域的颜色置换为newcolor 之后的矩阵G。
算法步骤(为规范算法,规定该算法只在第七步后结束):第一步:若点(i0,j0)的颜色值与新颜色值newcolor 相同,则(1) ;第二步:点(i0,j0)的颜色值→oldcolor;创建栈S,并将点坐标(i0,j0)入栈;第三步:若 (2) ,则转第七步;第四步:栈顶元素出栈→(x,y),并(3) ;第五步:1) 若点(x,y-1)在图像中且G[x,y-1]等于oldcolor,则(x,y-1)入栈S; 2) 若点(x,y+1)在图像中且G[x,y+1]等于oldcolor,则(x,y+1)入栈S; 3) 若点(x-1,y)在图像中且G[x-1,y]等于oldcolor,则(x-1,y)入栈S; 4) 若点(x+1,y)在图像中且G[x+1,y]等于oldcolor,则(x+1,y)入栈S;第六步:转 (4) ;第七步:算法结束。
中科大计算机考研2006-2012机试试题
中科大计算机考研 2012 复试机试试题
(感谢王道论坛“林影清风”版主) 本次机试两个半小时,共 5 题。 1. 字符串处理:从 string.in 文件里读入两个字符串,字符串除了数字还可能包括 '—'、 'E'、'e'、'.',相加之后输出到文件 string.out 中,如果是浮点型,要求用科学计数法表示(最 多包含 10 个有效数字) 。 Sample Input: Sample Output: 34.56 2.7956e2 2.45e2 2. 最大公约数:从 number.in 文件中读入 n 个数,求出这 n 个数的最小值、最大值以 及它们两的最大公约数,输出到文件 number.out 中。number.in 中第一行为 n,接下来为 n 个大于零的整数。 Sample Input: Sample Output: 3 484 486 3. 任务调度:从 task.in 文件中读入任务调度序列,输出 n 个任务适合的一种调度方式 到 task.out 中。每行第一个表示前序任务,括号中的任务为若干个后序任务,表示只有在前 序任务完成的情况下,后序任务才能开始。若后序为 NULL 则表示无后继任务。 Sample Input: Sample Output: Task0(Task1,Task2) Task0 Task1 Task3 Task2 Task1(Task3) Task2(NULL) Task3(NULL) 4. 火车票订购:火车经过 X 站,火车最大载客人数为 m,有 n 个订票请求,请求订购 从 a 站到 b 站的 k 张票, 若能满足订购要求则输出 1, 否则输出 0。 数据从 ticket.in 中输入, 第一行有四个数,分别为 n,m。接下来有 n 行,每行三个数分别为 a,b,k。结果输出到 文件 ticket.out 中。 Sample Input: Sample Output: 5 10 1 4 10 9 0 8 12 2 1 8 12 1 1 14 20 8 0 30 300 15 5. 最短路径:有 n 个城市 m 条道路(n<1000, m<10000),每条道路有个长度,请找到 从起点 s 到终点 t 的最短距离,并且输出经过的城市的名,如果有多条,输出字典序最小的 那条;若从 s 到 t 没有路径,则输出“can't arrive” 。从 road.in 中读入数据,第一行有四个 数,分别为 n,m,s,t。接下来 m 行,每行三个数,分别为两个城市名和距离。输出结果 到 road.out 中。
中科大近几年上机试题及解答
return 0; } 第六道,给出带括号的四则运算表达式,要求给出逆波兰式 #include<stdio.h> #include <string.h> #include<ctype.h> #include <stdlib.h> typedef struct { char mark; int pd; }Oper; #define MAXDEP 10//最大栈的深度 #define MAXLEN 20//字符数组的最大长度 enum {end,add,sub,mydiv,mul};//#,+,-,*,/,div与库函数重名,故改为mydiv Oper oper[MAXDEP]; int top=0; void push(Oper op) {
中科大近几年上机试题及解答
题目来自互联网,皆为真题大意,不能保证与真题无差别。所用测试数据并非科大原来的数 据,凡涉及到文件读写的,输入文件名称为 abc.in,输出文件名为xyz.out。代码仅供参考。 06年 上午 第一道,读int矩阵文件,将之转置后输出. 文件abc.in的内容 34 12 34 56 78 23 45 14 56 123 456 675 76 源代码: #include<stdio.h> #include <malloc.h> main() {
if(isLegal(str)) {
fprintf(fpo,"%s\n",str); count++; } //printf("%s\n",str); } fprintf(fpo,"There are:%d legal identifiers",count); } xyz.out 内容如下: _merlin total file_name a3bo9 There are:4 legal identifiers 第四道,给出无向图连接矩阵,求各个连同分量. abc.in ABCDEFGH 01000011 10000001 00000000 00001100 00010100 00011000 10000001 01000010 code: #include<stdio.h> #include<string.h> #define GType char #define MAXNUM 10 #define TRUE 1 #define FALSE 0 #define BOOL int BOOL visit[MAXNUM]; FILE *fpo; typedef struct { GType vexs[MAXNUM]; int adjMatrix[MAXNUM][MAXNUM]; int vexnum; }Graph; int FirstAdjVex(Graph *g,int v) {
2012年全国硕士研究生入学统一考试计算机科学与技术学科联考真题及详解【圣才出品】
2012年全国硕士研究生入学统一考试计算机科学与技术学科联考计算机学科专业基础综合真题及详解一、单项选择题:l~40小题。
每小题2分,共80分。
下列每题给出的四个选项中,只有一个选项是最符合题目要求的。
1.求整数n(n≥0)阶乘的算法如下,其时间复杂度是()。
A.O(log2n)B.O(n)C.O(nlog2n)D.O(n2)【答案】B【解析】设fact(n)的运行时间函数是T(n)。
该函数中语句①的运行时间是O(1),语句②的运行时间是T(n-1)+O(1),其中O (1)为乘法运算的时间。
因此,当n≤1时,T(n)-O(1);当n>1时,T(n)=T(n-1)+O(1)。
则,T(n)=O(1)+T(n-1)=2×O(1)+T(n-2)=(n-1)×O(1)+T(1)=n×O(1)=O(n),即fact(n)的时间复杂度为O(n)。
2.已知操作符包括‘+’、‘-’、‘*’、‘/’、‘(’和‘)’。
将中缀表达式a+b-a*((c+d)/e-f)+g转换为等价的后缀表达式ab+acd+e/f-*-g+时,用栈来存放暂时还不能确定运算次序的操作符。
若栈初始时为空,则转换过程中同时保存在栈中的操作符的最大个数是()。
A.5B.7C.8D.11【答案】A【解析】基本思想是:采用运算符栈是为了比较运算符的优先级,所有运算符必须进栈。
只将大于栈顶元素优先级的运算符直接进栈,否则需要退栈栈顶运算符(先出栈的运算符先计算,同优先级的运算符在栈中的先计算)。
表达式a+b-a*((c+d)/e-f)+g产生后缀表达式的过程如下表所列:通过上表可以看出,显然转换过程中同时保存在栈中的操作符的最大个数是5。
3.若一棵二叉树的前序遍历序列为a,e,b,d,c,后序遍历序列为b,c,d,e,a,则根结点的孩子结点()。
A.只有eB.有e、bC.有e、cD.无法确定【答案】A【解析】由题目可知,若一棵二叉树的前序遍历序列为a,e,b,d,c,后序遍历序列为b,c,d,e,a,其中a为这棵二叉树的根结点,接下来,在前序遍历的第二个结点为e,而后序遍历的倒数第二个结点为e,说明a的孩子结点只有e。
2012考研计算机真题及答案解析(详细)
2012年全国硕士研究生入学统一考试计算机科学与技术学科联考计算机学科专业基础综合试题一、单项选择题:第1~40小题,每小题2分,共80分。
下列每题给出的四个选项中,只有一个选项最符合试题要求。
1.求整数n(n≥0)阶乘的算法如下,其时间复杂度是()。
int fact(int n){if(n<=1)return 1;return n*fact(n-1);}A.O(log2n)B.O(n)C.O(nlog2n)D.O(n2)2.已知操作符包括‘+’、‘-’、‘*’、‘/’、‘(’和‘)’。
将中缀表达式a+b-a*((c+d)/e-f)+g转换为后缀表达式ab+acd+e/f-*-g+时,用栈来存放暂时还不能确定运算次序的操作符。
若栈初始时为空,则转换过程中同时保存在栈中的操作符的最大个数是()。
A.5B.7C.8D.113.若一棵二叉树的前序遍历序列为a,e,b,d,c,后序遍历序列为b,c,d,e,a,则根结点的孩子结点()。
A.只有e B.有e、b C.有e、c D.无法确定4.若平衡二叉树的高度为6,且所有非叶结点的平衡因子均为1,则该平衡二叉树的结点总数为()。
A.12B.20C.32D.335.对有n个顶点、e条边且使用邻接表存储的有向图进行广度优先遍历,其算法的时间复杂度是()。
A.O(n)B.O(e)C.O(n+e)D.O(n×e)6.若用邻接矩阵存储有向图,矩阵中主对角线以下的元素均为零,则关于该图拓扑序列的结论是()。
A.存在,且唯一B.存在,且不唯一C.存在,可能不唯一D.无法确定是否存在7.对如下有向带权图,若采用迪杰斯特拉(Dijkstra)算法求从源点a到其他各顶点的最短路径,则得到的第一条最短路径的目标顶点是b,第二条最短路径的目标顶点是c,后续得到的其余各最短路径的目标顶点依次是()。
A.d,e,f B.e,d,fC.f,d,e D.f,e,d8.下列关于最小生成树的说法中,正确的是()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
王道论坛
王道论坛()友情分享!予人玫瑰 手留余香!
王道论坛
王道论坛()友情分享!予人玫瑰 手留余香!
26. int s; 27. int move[5][5]; 28. 29. InitiaMove(move); 30. 31. s=1; 32. while ((!feof(fp))&&(s!=5)) 33. { 34. file_c=fgetc(fp); 35. if (('a'<=file_c)&&(file_c<='e')) 36. { 37. s=move[file_c-'a']; 38. } 39. else 40. s=1; 41. } 42. 43. if (s==5) 44. { 45. printf("找到 abc*d?e 匹配\n"); 46. } 47. else 48. { 49. printf("没有找到 abc*d?e 匹配\n"); 50. } 51. 52. return 0; 53. }
王道论坛()友情分享!予人玫瑰 手留余香!
中科大计算机考研 2012 复试机试试题
(感谢王道论坛“林影清风”版主) 本次机试两个半小时,共 5 题。 1. 字符串处理:从 string.in 文件里读入两个字符串,字符串除了数字还可能包括 '—'、 'E'、'e'、'.',相加之后输出到文件 string.out 中,如果是浮点型,要求用科学计数法表示(最 多包含 10 个有效数字) 。 Sample Input: Sample Output: 34.56 2.7956e2 2.45e2 2. 最大公约数:从 number.in 文件中读入 n 个数,求出这 n 个数的最小值、最大值以 及它们两的最大公约数,输出到文件 number.out 中。number.in 中第一行为 n,接下来为 n 个大于零的整数。 Sample Input: Sample Output: 3 484 486 3. 任务调度:从 task.in 文件中读入任务调度序列,输出 n 个任务适合的一种调度方式 到 task.out 中。每行第一个表示前序任务,括号中的任务为若干个后序任务,表示只有在前 序任务完成的情况下,后序任务才能开始。若后序为 NULL 则表示无后继任务。 Sample Input: Sample Output: Task0(Task1,Task2) Task0 Task1 Task3 Task2 Task1(Task3) Task2(NULL) Task3(NULL) 4. 火车票订购:火车经过 X 站,火车最大载客人数为 m,有 n 个订票请求,请求订购 从 a 站到 b 站的 k 张票, 若能满足订购要求则输出 1, 否则输出 0。 数据从 ticket.in 中输入, 第一行有四个数,分别为 n,m。接下来有 n 行,每行三个数分别为 a,b,k。结果输出到 文件 ticket.out 中。 Sample Input: Sample Output: 5 10 1 4 10 9 0 8 12 2 1 8 12 1 1 14 20 8 0 30 300 15 5. 最短路径:有 n 个城市 m 条道路(n<1000, m<10000),每条道路有个长度,请找到 从起点 s 到终点 t 的最短距离,并且输出经过的城市的名,如果有多条,输出字典序最小的 那条;若从 s 到 t 没有路径,则输出“can't arrive” 。从 road.in 中读入数据,第一行有四个 数,分别为 n,m,s,t。接下来 m 行,每行三个数,分别为两个城市名和距离。输出结果 到 road.out 中。
中科大计算机考研 2008 复试机试试题
08 复试上机题 上午组 1. /////////////一个十进制正整数转换成二进制有多少个 1 2. ////////////////约瑟夫环问题 3. ///////////////////从文件读入 2 个矩阵,输出矩阵相乘后的矩阵 4. ///////////字符串问题。从文件中读入几行英文句子。输出单词,行号,并按单词字典索 引。 08 上午 ////////1.输入一个十进制数,输出二进制 0,1 串中 1 的个数
10. } 11. } 12. move[1][0]=2; 13. move[2][1]=3; 14. move[3][2]=3; 15. move[3][3]=4; 16. move[3][4]=5; 17. move[4][4]=5; 18. return 0; 19. } 20. 21. int main() 22. { 23. FILE * fp; 24. fp=fopen("3.txt","r+"); 25. char file_c;
出按字典序排列最大的元素所在的行列。
王道论坛
王道论坛()友情分享!予人玫瑰 手留余香!
第三题: 例如 输入:40 输出:20
已知二叉排序树用二叉链表存储,结点的关键字为 1 正整数。从键盘输入结点的关
键字(以 0 表示结束)建立一棵二叉排序树,并输出其后序遍历序列。 20 70 60 60 70 0 40
4.从文件中读入一个二叉树,然后后序遍历该二叉树。 4//表示节点个数 1 2 4 //2 是节点 1 的左孩子,4 为右孩子 2 0 3//0 表示没有左孩子 3 0 0 4 0 0
本题“loujian_1989”道友的描述:给你一个二叉树,每个节点有编号,给你一个序列,每
个节点给了左孩父亲节点域,用来找到父亲节点,然后写一个后续遍历的递归程序。
中科大计算机考研 2009 复试机试试题
(感谢王道论坛“lowtec”和“baisy”道友) 机试一小时,共三题 机试分三组进行,每组又有 A、B 卷,共六套卷 第一组 试卷 A (共分 3 组,每组又分 A/B 卷,很抱歉只能提供这一组的试题,别的没 搞到) 1.输入:0~65535 的十进制数 处理:比如输入 4,转化为 16 位二进制数 0000 0000 0000 0100 ,4 个一组,相异或, 变为 0001,然后把 0001 转化为十进制的 1 输出 输出:1 2.键盘输入 n 个数 处理:将 n 个数由小到大排序,如果 n 是奇数,输出正中间的数;如果 n 是偶数,输出 正中间的两个数 3.输入:文件读入类 ABC00DE00...的二叉树先序序列,0 表示叶子 输出:中序输出深度<=depth/2 的节点,其中 depth 是你所建立的树的深度
王道论坛
王道论坛()友情分享!予人玫瑰 手留余香!
Sample Input: 3313 133 121 231 Sample Output: 2 123
============================================================================ 测试数据不完全一样,但题目意思是差不多的。这次机试,整体感觉难度一般,其中第 1 题有简单的做法, 但是要熟悉 scanf/printf 的输入输出参数, 如果真的当成字符串进行处理 的话将会非常麻烦;第 2 题属于简单的题,主要是考辗转相除法求最大公约数;第 3、5 题 是关于图的拓扑排序以及 Dijkstra 算法求最短路径问题,如果平时没写过相关的程序的话, 这两题很难在考试的时候写出完整的程序;第 4 题将题目意思看懂也是一个简单的题。 我拿到题目,先做第一题,当然第一想法是字符串处理,将输入的两个字符串先转化成 double 型数,写着发现很复杂,有正负、有小数点、有 e,这要用编译原理里面的正则式来 做多复杂啊....直接跳过去,发现第 2 题简单,先用了不到 5 分钟给敲完测试完了。扫了一下 第 5 题,发现这是最短路径的问题,这题有信心可以搞定,与之前写的还是有区别,这题要 考虑没有路径的情况以及还要打印路径。写完之后测试了几组数据,包括没有路径的,感觉 差不多应该可以了。接着看第 3 题,看完题目明白是拓扑排序的题,但得提取出字符串中的 数字作为图的顶点,写的还算比较顺的。又回到第一题,感觉应该第一题不应该会很难的, 想到 C 语言标准输入/输出有相应的参数可以处理浮点数,但无奈却不记得了。使劲按 F1 试 图找到 MSDN,发现没有装。没办法,还是自己写字符串处理吧...写着发现没有信心把这个 程序写完整,再次搁置。还有第 4 题,开始题目意思理解错了,写出来测试发现错了,又仔 细读了一遍,OK,很简单的一个题,用一个数组保存每个站已经载的人数,对于每个请求, 看看从 a~b 的区间中加上 k 是否有超载的即可。第三次回到第 1 题,想到有个 atof()的函 数可以将字符串转化为 double 型,果断用了,但输出怎么办,总是输出不了题目要求的那 种格式。最后没办法自己写个函数将 double 型的 m 输出为科学计数法...用了一个 log10()求 出指数 e,然后 num/pow(10,e)得到有效部分,再追加输出一个字符 e,以及指数的值,看着 挺像的。真是折腾人,本来最简单的一个题,弄得最复杂了。
中科大计算机考研 2011 复试机试试题
(感谢王道论坛“lven” 、 “水东流”和“loujian_1989”道友) 1.给两个十进制数,先异或,然后输出其二进制形式; 2.一共有十二个球,其颜色有红、黄、黑三种,红黄黑分别有想 x,y,k 个,现在从 其中取出八个球,共有多少种取法,输出到文件中?(x,y,k 是从键盘输入,痛颜色的球 不区分) 输出格式; 这有 种取法: 1. 种红球, 黄球, 黑球; …… 3.是一个字符串匹配的问题,读入文件 input.txt,看是否匹配一个格式(具体什么格 式我不记得了,但这题有点难,我没做出来) 。
中科大计算机考研 2010 复试机试试题
(感谢王道论坛“lowtec”和“baisy”道友)
第一题: input.txt 文件里面有一段文章,由字符串和一些特殊字符构成。先把 input 文件中的