阿里2014年秋招研发试题_附答案

合集下载

阿里各岗位技术面试题含答案【最新】

阿里各岗位技术面试题含答案【最新】

阿里各岗位技术面试题含答案1.请评估一下程序的执行结果?public class SynchronousQueueQuiz {public static void main(String[] args) throws Exception {BlockingQueue<Integer> queue = new SynchronousQueue<>();System.out.print(queue.offer(1) + " ");System.out.print(queue.offer(2) + " ");System.out.print(queue.offer(3) + " ");System.out.print(queue.take() + " ");System.out.println(queue.size()); }A、true true true 1 3B、true true true (阻塞)C、false false false null 0D、false false false (阻塞)阿里巴巴出题专家:桃谷阿里云中间件技术专家,Apache Dubbo PMC ,Spring Cloud Alibaba Architect,具有多年分布式以及中间件架构设计及研发经验,目前负责Apache Dubbo的研发及社区生态。

招聘职位:阿里中间件技术人才2.如何用socket编程实现ftp协议?阿里巴巴出题专家:吴明阿里云弹性计算创新产品Z工作室资深技术专家,2010年加入阿里云,曾负责过阿里云供应链和公有云IAAS运维团队,14年开始从0到1建立了专有云技术服务团队。

目前是阿里云国产化研发负责人和弹性计算产品团队负责人。

招聘职位:阿里云-GPU虚拟化研发高级专家3.假如给你一个新产品,你将从哪些方面来保障它的质量?阿里巴巴出题专家:晨晖阿里云中间件技术部测试开发专家,从事软件开发和测试工作多年,在软件产品质量保障方面有较丰富的经验。

阿里巴巴2014用户体验研究专员笔试题详细解析(选择题部分)

阿里巴巴2014用户体验研究专员笔试题详细解析(选择题部分)

加权算术平均数中权重(权数)的实质是?•各组单位数之间的比值•各组的单位数•各组的单位数占总体单位数的比重•各组的单位数与指标值的乘积答案选C:加权平均数大家都会算,但这道题的问法比较陌生,假设以下情景,A班30人,平均分80分,B班20人,平均分60分,AB两班一起的平均分是80*0.6+60*0.4=72,这里的0.6和0.4是占总体的比重,故选C非引导性的问题对访谈的成败起到重要作用,以下哪个选项跟“非引导性”无关?•问题要关注直接体验•保持问题的封闭性•问题要客观•问题要关注单一主题答案A:请问您以下对信度、效度相互关系的描述,哪个是正确的?•信度高,效度也就高•效度高,信度也就高•信度低,效度也可能高•效度低,信度也就低答案选B:信度是测量的一致性,效度是测量的有效性,信度高,效度不一定高,但信度低,效度一定低某地区到实体超市消费的人数呈下降趋势,2011年与2010年相比降低4%,2012年又比2011年降低6%,2013年是2012年的95%,则2013年与2010年相比,下降幅度为多少?•12.0%•85.7%•14.3%•88.0%•以上都不是答案选C,我看不懂出这道题的意思。

在一次问卷调查中,我们对用户的网上购物态度进行了测量,测量使用了5分态度语句量表,事后我们希望根据用户的网上购物态度对用户进行分类,请问下列哪种统计分析方法是必须的?•回归分析(Regression)•相关分析(Correlation)•聚类分析(Clustering)•因子分析(Factor analysis)•方差分析答案选C,因为题中提到目的是分类,简单说一下几个分析的作用回归分析:变量A的变异对变量B的影响相关分析:变量AB之间的共变关系因子分析:从变量群中提取共性因子方差分析:由变量A产生的变异引起的变量B的变异在变量B全部变异中占的比重(下面进入多选题)在可用性测试过程中,请问以下哪些做法是正确的?•在用户遇到障碍求助时,要积极回应用户的疑问•可以鼓励用户在测试过程中,说出自己的操作步骤及疑问•在用户遇到障碍时,就要第一时间追问,了解障碍产生的原因•要让用户自己确认任务是否完成,研究人员不能帮助用户下结论答案ABCD:可用性测试指的是让一群具有代表性的用户对产品进行典型操作,同时观察员和开发人员在一旁观察,聆听,做记录。

阿里巴巴2014秋季校园招聘_软件研发工程师笔试题答案

阿里巴巴2014秋季校园招聘_软件研发工程师笔试题答案

2014研发1. 单选题1. 假设把整数关键码K散列到N个槽列表,以下哪些散列函数是好的散列函数A: h(K)=K/N;B: h(K)=1;C: h(K)=K mod N;D: h(K)=(K+rand(N)) mod N, rand(N)返回0到N-1的整数答案:D2. 下面排序算法中,初始数据集的排列顺序对算法的性能无影响的是:A: 堆排序 B:插入排序C: 冒泡排序 D:快速排序答案:A(插入排序:最优时间复杂度O(n)最差时间复杂度O(n^2)平均时间复杂度O(n^2)冒泡排序:最优时间复杂度O(n)最差时间复杂度O(n^2)平均时间复杂度O(n^2)快速排序:最优时间复杂度O(nlogn)最差时间复杂度O(n^2)平均时间复杂度O(nlogn)堆排序:最优时间复杂度O(nlogn)最差时间复杂度O(nlogn)平均时间复杂度O (nlogn))3. 下面说法错误的是:A: CISC计算机比RISC计算机指令多B: 在指令格式中,采用扩展操作码设计方案的目的是为了保持指令字长不变而增加寻址空间C:增加流水线段数理论上可以提高CPU频率D:诺依曼体系结构的主要特征是存储程序的工作方式答案:B4. 不属于诺依曼体系结构必要组成部分是:A:CPU B: Cache C:RAM D:ROM答案:B5. 一个栈的入栈序列式ABCDE则不可能的出栈序列是:A:DECBA B:DCEBA C:ECDBA D:ABCDE答案:C6.你认为可以完成编写一个C语言编译器的语言是:A:汇编 B:C语言 C:VB D:以上全可以答案:D7. 关于C++/JAVA类中的static成员和对象成员的说确的是:A:static成员变量在对象构造时候生成B: static成员函数在对象成员函数中无法调用C: 虚成员函数不可能是static成员函数D: static成员函数不能访问static成员变量答案:A8:答案:C9:某进程在运行过程中需要等待从磁盘上读入数据,此时进程的状态将:A: 从就绪变为运行 B:从运行变为就绪C: 从运行变为阻塞 D:从阻塞变为就绪答案:C10:下面算法的时间复杂度为:Int f(unsigned int n){If(n==0||n==1)Return 1;ElseReturn n*f(n-1);}A: O(1) B:O(n) C:O(N*N) D:O(n!)答案:B11: n从1开始,每个操作可以选择对n加1或者对n加倍。

2014年秋季阿里巴巴校园招聘北京站系统工程师试题

2014年秋季阿里巴巴校园招聘北京站系统工程师试题

2014年秋季阿里巴巴校园招聘北京站系统工程师试题系统工程师北京笔试卷第一部分单选题(前10题,每题2分;后10题,每题3分;共50分。

选对得满分,选错倒扣一分,不选得0分。

)1.字符串“alibaba”有个不同的排列。

A. 5040B. 840C. 14D.4202.下列一段C++代码的输出是。

class Base{public:int Bar(char x) {return (int)(x);}virtual int Bar(int x) {return(2*x);}};class Derived :public Base{public:int Bar(char x) {return(int)(-x);}int Bar(int x) {return (x/2);}};void main(void){Derived Obj;Base*pObj=&Obj;printf("%d,",pObj->Bar((char)(100)));printf("%d,",pObj->Bar(100));}A. 100,50B. -100,200C. -100,50D. 100,2003.有一个二维数组A[10][5],每个数据元素占1个字节,且A[0][0]的存储地址是1000,则A[i][j]的地址是。

A. 1000+10i+jB. 1000+i+jC. 1000+5i+jD. 1000+10i+5j4.下列不是线性表?A. 队列B. 栈C. 关联数组D. 链表5. 下列有关在一个处理器(processor)上跑两个线程(thread)的说法中,正确的是。

A. 一个线程可以改变另一个线程的程序计数器(program counter)B. 一个线程既不能读也不能写另一个线程的栈(stack)C. 一个线程可以读写另一个线程的寄存器(register)D. 以上都不对6.关于双链表的搜索给定元素操作的说法正确的是。

阿里巴巴校招数据分析师职位笔试题目

阿里巴巴校招数据分析师职位笔试题目

阿里巴巴校招数据分析师职位笔试题目第1篇:阿里巴巴校招数据分析师职位笔试题目1、选择题1、一下哪个属于离散变量水稻亩产量家庭收入商品价格汽车产量2、卡方分布的样本方差分别是n12n4n3、有个人买*,中奖概率为1/10,每次花200元,连续买5次,如果中奖则奖金为1000元,问不赔钱的概率是多少4、世界男女比例相当,黄种人比其他人种多的多,其他人种男的比女的多,以下那句是正确的黄种人男人比黑种人女人多黄种人女人比黑种人男人多5、关于聚类分析的题目,判断哪句不正确6、均值>中位数>众数,问这个分布偏左还是偏右7、随机无放回抽样跟随机有放回抽样比较,哪个方差大,还是相等8、回归分析y=a+bx,如果存在自相关,问b的值如何,是正负还是0,还有显著*如何。

2、问答题1、sql语句,表a有member_id,city,表b有member_id,price 几项,将a和b链接,且指定城市和price>10.member_id为主键.如果不会写就给出数据分析的思想2、数据清理中,处理缺失值的方法3、回归分析中出现的多重共线*问题是什么,如何处理3、分析题1、对不同价位区间的商品做活动,表a给活动出流连次数与总体浏览次数,表b给出活动商品转换率和总体商品转换率,分析现象2、某电商推出一款新的产品,希望这个产品能大卖,让你给这个主题取个名字,如果你是数据未完,继续阅读 >第2篇:阿里巴巴校园招聘笔试题目分享导读:时间为2014年8月29日,均为网上答题。

第一部分为单选题,共20题,要在40分钟内完成。

每个人的选择题都不一样,应该是后台有题库,每个人的试卷都是随机生成的。

第二部分为附加题,一般为1道问答题,2道编程题。

以下是由应届毕业生网小编j.l为您整理推荐的阿里巴巴校园招聘笔试题目分享,欢迎参考阅读。

通过算法生成的随机数是“伪随机”的,也就是说,在设定好第一个数之后,后面的数字的序列是确定的,并且经过一个非常大的循环会回到第一个数的状态,然后周而复始。

阿里巴巴笔试题及答案

阿里巴巴笔试题及答案

阿里巴巴笔试题及答案篇一:阿里巴巴oracle-dba 笔试题及答案】txt>1: 列举几种表连接方式hash join/merge join/nest loop(cluster join)/index join2: 不借助第三方工具,怎样查看sql 的执行计划set autot onexplain plan set statement_id = item_id for sql;select * from table(dbms_xplan.display);在optimizer_mode=choose 时, 如果表有统计信息(分区表外) ,优化器将选择cbo, 否则选rbo 。

rbo 遵循简单的分级方法学, 使用15 种级别要点,当接收到查询,优化器将评估使用到的要点数目,然后选择最佳级别(最少的数量)的执行路径来运行查询。

cbo 尝试找到最低成本的访问数据的方法, 为了最大的吞吐量或最快的初始响应时间,计算使用不同的执行计划的成本,并选择成本最低的一个,关于表的数据内容的统计被用于确定执行计划。

4: 如何定位重要(消耗资源多)的sql select sql_textfrom v$sqlwhere disk_reads 1000 or (executions 0 and buffer_gets/executions 30000); 5: 如何跟踪某个session 的sql execdbms_system.set_sql_trace_in_session(sid,serial#,sql_trace); selectsid,serial# from v$session where sid = (select sid from v$mystat where rownum = 1);exec dbms_system.set_ev(sid,serial#,event_10046,level_12,);6:sql 调整最关注的是什么查看该sql 的response time(db block gets/consistent gets/physicalreads/sorts (disk))7: 说说你对索引的认识(索引的结构、对dml 影响、为什么提高查询性能) b-tree index/bitmap index/function index/patitional index(local/global) 索引通常能提高select/update/delete 的性能, 会降低insert 的速度, 8: 使用索引查询一定能提高查询的性能吗?为什么索引就是为了提高查询性能而存在的,如果在查询中索引没有提高性能, 只能说是用错了索引,或者讲是场合不同9: 绑定变量是什么?绑定变量有什么优缺点?绑定变量是相对文本变量来讲的,所谓文本变量是指在sql 直接书写查询条件,这样的sql 在不同条件下需要反复解析,绑定变量是指使用变量来代替直接书写条件,查询bind value 在运行时传递,然后绑定执行。

2014年阿里巴巴校园招聘研发工程师考试真题

2014年阿里巴巴校园招聘研发工程师考试真题

2014年阿里巴巴校园招聘研发工程师考试真题1.有一个虚拟存储系统,若进程在内存中占3页(开始时内存为空),若采用先进先出(FIFO)页面淘汰算法,当执行如下访问页号序列后1,2,3,4,5,1,2,5,1,2,3,4,5,会发生多少缺页?A、7B、8C、9D、102.设有一个顺序栈S,元素s1、s2、s3、s4、s5、s6依次进栈,如果6个元素的出栈顺序为s2、s3、s4、s6、s5、s1,则顺序栈的容量至少应为多少?A、2B、3C、4D、53.下列关于文件索引结构的叙述中,哪一个是错误的?A、采用索引结构,逻辑上连续的文件存放在连续的物理块中B、系统为每个文件建立一张索引表C、索引结构的优点是访问速度快,文件长度可以动态变化D、索引结构的缺点是存储开销大4.【0、2、1、4、3、9、5、8、6、7】是以数组形式存储的最小堆,删除堆顶元素0后的结果是()A、【2、1、4、3、9、5、8、6、7】B、【1、2、5、4、3、9、8、6、7】C、【2、3、1、4、7、9、5、8、6】D、【1、2、5、4、3、9、7、8、6】5.某页式存储管理系统中,地址寄存器长度为24位,其中页号占14位,则主存的分块大小是()字节。

A、10B、2^10C、2^14D、2^246.在一个长为33厘米的光滑凹轨上,在第3厘米、第6厘米、第19厘米、第22厘米、第26厘米处各有一个钢珠,凹轨很细,不能同时通过两个钢珠,开始时,钢珠运动方向是任意的。

两个钢珠相撞后,以相同速度反向运动。

假设所有钢珠初始速度为每秒运动1厘米,那么所有钢珠离开凹轨的最长可能时间是()A、30B、26C、38D、337.std::vector::iterator重载了下面哪些运算符?A、++B、>>C、*(前置)D、==8.下列运算符,在C++语言中不能重载的是()A、*B、?:C、::D、delete9.在排序方法中,元素比较次数与元素的初始排列无关的是()A、Shell 排序B、归并排序C、直接插入排序D、选择排序10.给定如下代码:int x[4]={0}; int y[4]={1}; 数组x和y的值为()A、{0,0,0,0},{1,1,1,1}B、{0,0,0,0},{1,0,0,0}C、{0,不确定},{1,不确定}D、与编译器相关10.给出以下定义,下列哪些操作是合法的?const char *p1 = "hello";char* const p2 = "world";A、p1++B、p1[2]='w';C、p2[2]='l';D、p2++11.假设在n进制下,下面的等式成立,n值是() 567*456=150216A、9B、10C、12D、1812.关于struct和class,下列说法正确的是()A、struct的成员默认是public,class的成员默认是privateB、struct不能继承,class可以继承C、struct可以有无参构造函数D、struct的成员变量只能是public13.定义一个函数指针,指向的函数有两个int形参并且返回一个函数指针,返回的指针指向一个有一个int形参且返回int的函数?A、int (*(*F)(int, int))(int)B、int (*F)(int, int)C、int (*(*F)(int, int))D、*(*F)(int, int)(int)14.声明一个指向含有10个元素的数组的指针,其中每个元素是一个函数指针,该函数的返回值是int,参数是int*,正确的是()A、(int *p[10])(int*);B、int [10]*p(int *);C、int (*(*p)[10])(int *);D、int ((int *)[10])*p;E、以上选项都不正确15.一个栈的输入序列为123.....n,若输出序列的第一个元素是n,输出第i(1<=i<=n)个元素是()A、不确定B、n-i+1C、iD、n-i16.下列代码编译时会产生错误的是()[cpp] view plaincopy#includeusing namespace std;struct Foo{Foo() { }Foo(int) { }void fun() { }};int main(void){Foo a(10); //语句1a.fun(); //语句2Foo b(); //语句3b.fun(); //语句4return 0;A、语句1B、语句2C、语句3D、语句417.在32位机器上,下列代码中[cpp] view plaincopy#pragma pack(2)class A{int i;union U{char buff[13];int i;}u;void foo() { }typedef char* (*f)(void*);enum{red, green, blue} color;}a;sizeof(a)的值是()A、20B、21C、22D、24E、非以上选项18.下面描述中,错误的是()A、基类定义的public成员在公有继承的派生类中可见,也能在类外被访问B、基类定义的public和protected成员在私有继承的派生类中可见,在类外可以被访问C、基类定义的public和protected成员在保护继承的派生类中不可见D、基类定义的protected成员在protected继承的派生类中可见,也能在类外被访问19.当很频繁地对序列中部进行插入和删除操作时,应该选择使用的容器是()A、vectorB、listC、dequeD、stack20.判断一个单向链表中是否存在环的最佳方法是()A、两重遍历B、快慢指针C、路径记录D、哈希表辅助21.给你1、2、3 这三个数字可以使用C的各种运算符你能表示的最大的整数是()A、2*3*sizeof(1)B、3<<(2<< D、(unsignedC、sizeof(3)<<(sizeof(2)<<(sizeof(1)))> -1的二进制形式就是全1表示22.下面代码的输出是多少?[cpp] view plaincopyclass A{public:A() { cout<<"A"<<>~A() { cout<<"~A"<<>};class B:public A{public:B(A &a):_a(a){cout<<"B"<< p>}~B(){cout<<"~B"<< p>}private:A _a;};int main(void){A a; //很简单,定义a的时候调用了一次构造函数B b(a); //这里b里面的_a是通过成员初始化列表构造起来的//而且是通过copy constructor构造的是b的成员对象_a的,这里是编译器默认的,因此在构造好_a前,先调用基类构造函数//然后才是构造自身,顺序就是A()->_a->B()(局部)//因此这里有两个A,一个B//在return之前进行析构/************************************************************************//*析构是按照定义对象的反顺序来的,而且同一个对象按照构造的反顺序来的,因此这里先析构b然后才是a,那么b的构造顺序是上面的A()->_a->B()(局部),反过来,就是B()(局部)->_a->A()因此得到的就是~B->~A->~A在b之后就是析构a最后结果就是~B->~A->~A->~A*/return 0;}23.一个骰子,6面,1个面是1,2个面是2,3个面是3,问平均掷多少次能使1、2、3都至少出现一次!24.一个有趣的抛硬币问题假设有一个硬币,抛出字(背面)和花(正面)的概率都是0.5,而且每次抛硬币与前次结果无关。

2014年XXX校园招聘笔试考试真题及答案

2014年XXX校园招聘笔试考试真题及答案

2014年XXX校园招聘笔试考试真题及答案2014年XXX校园招聘笔试考试真题及答案一、单项选择题1.XXX需求层次理论将人类的多种需求分为五个层次,其中最高层次需求是()。

A。

尊重的需要B。

自我实现的需要C。

社交的需要D。

安全的需要2.服务特征的()是指服务不可能像有形产品一样被储存以备来出售。

A。

相连性B。

时间性C。

无形性D。

易变性3.主张通过分析案例来研究管理学问题,从而抽象出某些一般性的管理结论或管理原理的学派是()。

A。

管理科学学派B。

经验学派C。

系统管理学派D。

决策理论学派4.补偿通货膨胀风险的利率是()。

A。

名义利率B。

实际利率C。

一般利率D。

浮动利率5.银行以年贴现率10%为顾客的一张面额为1万元,72天后才到期的票据办理贴现,银行应付给顾客()元。

A。

9000B。

C。

9800D。

8000例题:公司持有一张票面额为40,000元的不带息商业汇票,出票日3月1日,到期日6月1日。

企业于4月1日向银行贴现,年贴现率为12%。

如何计算及做会计分录?1.贴现期限= 30 + 31 + 1 - 1 = 61天,其中4月30天、5月31天、6月1天。

2.贴现息= 40,000 *(12% / 360)* 61 = 813.33元。

3.贴现额= 40,000 - 813.33 = 39,186.67元。

4.会计处理:借:银行存款39,186.67元借:财务费用813.33元贷:应收票据40,000.00元补充问题:商业汇票持票人持尚未到期的商业汇票,向银行贴现以提早收取款项,而贴现银行为此垫支了该票款并承担了一定的风险,应当收取一定的费用。

所以,银行在办理贴现业务时,需要向申请贴现人收取(从贴现额中扣除)贴现息。

6.股票市盈率与股票价格紧密相关,股票市盈率越高,股票的价格就()。

A。

越低B。

越高C。

不动D。

反向变动市盈率 = 普通股每股市场价格 / 普通股每年每股盈利。

市盈率是估计普通股价值的最基本、最重要的指标之一。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

阿里巴巴集团2014校园招聘笔试题(9月22北京)(答案仅是个人见解,欢迎补充更正,谢谢)第一部分单选题(前10题,每题2分;后10题,每题3分。

选对得满分,选错倒扣1分,不选得0分)1、一次内存访问,SSD硬盘访问和SATA硬盘随机访问的时间分别是()A、几微秒,几毫秒,几十毫秒B、几十纳秒,几十微秒,几十毫秒C、几十纳秒,几十微秒,几十毫秒D、几微秒,几十微秒,几十毫秒2、8进制数256,转化成7进制数是(B)A、356B、336C、338D、3463、某网络的IP地址空间为192.168.5.0/24,采用定长子网划分,子网掩码为255.255.255.248,则该网络的最大子网个数、每个子网内最大可分配地址个数各位(C)A、8,32B、32,8C、32,6D、8,304、以下关于链式存储结构说法错误的是(A)A、查找节点时链式存储比顺序存储快B、每个节点是由数据域和指针域组成C、比顺序存储结构的存储密度小D、逻辑上不相邻的节点物理上可能相邻5、假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素a[1][2]的值为(A)A、6B、4C、2D、86、下面函数的功能是(C)int fun (char *s){char *p=s;while(*p++);return p-s-1;}A、计算字符串的位(bit)数B、复制一个字符串C、求字符串的长度D、求字符串存放的位置7、判断有向图是否存在回路,利用(A)方法最佳A、拓扑排序B、求最短路径C、求关键路径D、广度优先遍历8、依次读入数据元素序列{a,b,c,d,e,f,g}进栈,元素进栈或出栈顺序是未知的,下列序列中,不可能成为栈空时弹出的元素构成序列的有(D)A、{d,e,c,f,b,g,a}B、{c,d,b,e,f,a,g}C、{e,f,d,g,c,b,a}D、{f,e,g,d,a,c,b}9、下列有关图的遍历说法中,不正确的是(C)A、有向图和无向图都可以进行遍历操作B、基本遍历算法两种:深度遍历和广度遍历C、图的遍历必须用递归实现D、图的遍历算法可以执行在有回路的图中10、在16位机器上跑下列foo函数的结果是(B)void foo(){int i = 65536;cout << i <<”,”;i = 65535;cout << i;}A、-1,65535B、0,-1C、-1,-1D、0,6553511、有一段年代久远的C++代码,内部逻辑复杂,现在需要利用其实现一个新的需求,假定有以下可行的方案,应当优先选择(D)A、修改老代码的接口,满足新的需求B、将老代码抛弃,自己重新实现类似的逻辑C、修改老代码的内部逻辑,满足新的需求D、在这段代码之外写一段代码,调用该代码的一些模块,完成新功能需求12、在5个页框上使用LRU页面替换算法,当页框初始为空时,引用序列为0、1、7、8、6、2、3、7、2、9、8、1、0、2,系统将发生(C)次缺页A、13B、12C、11D、8分析:缺页为:0、1、7、8、6、2、3、9、8、1、0,共11次13、阿里巴巴有相距1500km的机房A和B,现有100GB数据需要通过一条FTP 连接在100s的时间内从A传输到B。

已知FTP连接建立在TCP协议之上,而TCP协议通过ACK来确认每个数据包是否正确传送。

网络信号传输速度2*108m/s,假设机房间带宽足够高,那么A节点的发送缓冲区可以设置为最小(A) A、18M B、12M C、6M D、24M分析:TCP协议原理:TCP每发送一个报文段,就启动一个定时器,如果在定时器超时之后还没有收到ACK确认,就重传该报文。

如图所示,数据包由A的缓冲区发往B,B在收到数据包以后,回发一个ACK确认包给A,之后A将该数据包从缓冲区释放。

因此,该数据包会一直缓存在A的缓冲区,直到一个ACK确认为止。

题目要求在100s内发送100GB数据,网络的传输速率至少是1G/s,某个数据包n在A中缓存的时间就是数据包n从A到B,再加上该数据包的ACK从B到A的时间:2*1500km/(2*108m/s)=1.5*10-2s,该段时间A中缓存的数据量至少是1G/s*1.5*10-2s约为15M14、有3个节点的二叉树可能有(A)种A、5B、13C、12D、1515、设某文件经内排序后得到100个初始归并段(初始顺串),若使用多路归并排序算法,且要求三趟归并完成排序,问归并路数最少为(D)A、8B、7C、6D、5分析:m个元素k路归并的归并趟数s=log k(m),代入数据:log k(100)≦316、一个优化的程序可以生成一n个元素集合的所有子集,那么该程序的时间复杂度是(B)A、O(n!)B、O(2n)C、O(n2)D、O(n log n)17、快速排序在已经有序的情况下效率最差,复杂度为(B)A、O(n log n)B、O(n2)C、O(n1.5)D、O(n2 log n)18、从一副牌(52张,不含打小怪)里抽出两张牌,其中一红一黑的概率是(D)A、25/51B、1/3C、1/2D、26/51分析:52张牌从中抽两张,就是C522种情况,一红一黑是C261 * C261种情况,概率P = C261 * C261 / C522 =26/5119、有一堆石子共100枚,甲乙轮流从该堆中取石子,每次可取2、4或6枚,若取得最后的石子的玩家为赢,若甲先取,则(C)A、谁都无法取胜B、乙必胜C、甲必胜D、不确定分析:先取的人只需要保证最后剩8枚就胜了。

而要保证最后剩8枚,则必须要保证每一个回合内取的数是一个可控的固定数,显然这个数字是8,所以只需要保证第一次取完后,剩下的数字是8的倍数,就一定能胜。

100除以8余数为4,故而,甲先取4枚,之后每一个回合所取数与上一个回合乙所取数之和为8,就能保证必胜。

20、现有一完全的P2P共享协议,每次两个节点通讯后都能获取对方已经获取的全部信息,现在使得系统中每个节点都知道所有节点的文件信息,共17个节点,假设只能通过多次两个对等节点之间通讯的方式,则最少需要(C)次通讯A、32B、31C、30D、29解法由@龙人920提供分析:如上图1所示,假设有5个节点,按连线1、2、3、4通讯之后,节点4和5就掌握了所有节点的信息,之后,1、2、3节点只需跟4或5任一节点通讯一次即连线5、6、7就可保证每个节点都知道所有节点的信息,总的通讯次数是(n-1)+(n-2)=2n-3次。

如果将所有节点分成两组,如图2所示,两组中的节点分别按连线1-8顺序通讯之后,节点4和5就掌握了1-5所有节点的信息,节点9和0就掌握了6-0所有节点的信息,再按连线9、10通讯之后,节点4、5、9、0就掌握了1-0所有节点的信息,剩下的节点只需跟4、5、9、0任一节点通讯一次就可保证每个节点知道所有节点信息,和图1相比,多了9和10两次通讯,总的通讯次数是(2n1-3)+(2n2-3)+2=2n-4次(n1和n2分别表示分组中元素个数)。

分3组的情况是(2n1-3)+(2n2-3)+(2n3-3)+6=2n-3次分4组的情况是(2n1-3)+(2n2-3)+(2n3-3)+(2n4-3)+8=2n-4次第二部分不定项选择(每题五分,每题有1-5个正确选项,完全正确计5分,漏选计2分不选计0分,多选、错选计-2分)21、2-3树是一种特殊的树,它满足两个条件:(1)每个内部节点有两个或三个子节点;(2)所有的叶节点到根的路径长度相同;如果一颗2-3树有9个叶节点,下列数量个非叶节点的2-3树可能存在的有(BE) A、8 B、7 C、6 D、5 E、4分析:根据条件(2),叶节点只能在同一层,根据条件(1),上一层的父节点只能是3个或4个,只能是如下图所示的两种结果22、下列有关进程的说法中,错误的是(ABC)A、进程与程序是一亿对应的B、进程与作业时一一对应的C、进程是静态的D、进程是动态的过程23、下列函数定义中,有语法错误的是(D)A、void fun(int x, int *y){x *= *y;}B、int * fun(int *x, int y){return x += y;}C、void fun(int *x, int y){*x += y;}D、void fun(int x, int *y){*x *= *y;}24、有朋自远方来,他乘火车,轮船,汽车,飞机来的概率分别是0.3,0.2,0.1,0.4,坐各交通工具迟到的概率分别是1/4,1/3,1/12,0,下列语句中正确的是(CD)A、如果他准点,那么乘飞机的概率大于等于0.5B、坐陆路(火车,汽车)交通工具准点机会比坐水路(轮船)要低C、如果他迟到,乘火车的概率是0.5D、如果他准点,坐轮船或汽车的概率等于坐火车的概率第三部分填空与问答25、(4分)文件分配表FAT是管理磁盘空间的一种数据结构,用在以链接方式存储文件的系统中记录磁盘分配和追踪空白磁盘块,整个磁盘仅设一张FAT 表,其结构如下所示,如果文件块号为2,查找FAT序号为2的内容得知物理块2的后继物理块是5,再查FAT序号为5的内容得知物理块5的后继物理块是7,接着继续查FAT序号为7的内容为“Λ”,即该文件结束标志,假设磁盘物理块大小为1KB,并且FAT序号以4bits为单位向上扩充空间。

请计算下列两块磁盘的FAT最少需要占用多大的存储空间?(1)一块540MB的硬盘(2)一块1.2GB的硬盘分析:(1)磁盘块大小为1KB,540MB的硬盘可以分成540MB/1KB=5.4*105个磁盘块,因此至少需要5.4*105<220个编号,需要20bit存储空间(2)同理,1.2G至少需要1.2*106<221个编号,为21bit,由于FAT 序号以4bits为单位向上扩充,因此需要24bit存储空间26、(4分)已知如下代码,并在两个线程中同时执行f1和f2,待两个函数都返回后,a的所有可能值是哪些?int a = 2, b = 0, c = 0;void f1() void f2(){ {a = a * 2; c = a + 11;a = b; a = c;} }分析:考虑四行代码的执行顺序即可(1)b=a*2,c=a+11,a=c,a=b a=4(2)b=a*2,c=a+11,a=b,a=c a=13(3)b=a*2,a=b,c=a+11,a=c a=15(4)c=a+11,a=c,b=a*2,a=b a=2627、(6分)设计一个最优算法来查找一n个元素数组中的最大值和最小值,已知一种需要比较2n次的方法,请给一个更优的算法。

相关文档
最新文档