《艺龙2018秋招Java笔试题.docx》由会员分享,可在线阅读,更多相关《艺龙2018秋招Java笔试题.docx(12页珍藏版)》请在第壹文秘上搜索。
1、单选题1、设有以下递归函数:intf(intm,intn)(Iif(m=0)(returnn+1;)elseif(n=O)(returnf(m-l,1);Ielserreturnf(m-l,f(m,11-1);)则f(3,3)的返回值为(C)A. 63B. 62C. 61D. 602、以下有关多道程序的描述中,正确的是(A)OA. 在多道程序环境下,数据的输入与程序执行开始时间都是随机的B. 在多道环境下执行的每道程序必须同时开始、同时结束C. 多道程序带来了程序间的资源竞争,程序不断被“执行-暂停-执行”,降低了整个系统的执行效率D. 在单CPU系统中,无法实现多道程序3、Mysql中存放日
2、期时间型数据时,最佳数据类型是(B)A. BigintB. DatetimeC. DateD. Timestamp4、下列说法正确的是(C)5、所有关键活动提前完成,则整个活动提前完成A. 任何一个关键活动提前完成,将使整个工程提前完成B. 某些活动若提前完成,将有可能使整个工程提前完成C. 关键活动不按期完成将会影响整个工程的完成时间5、下列代码执行后的变量num3的值是(D)intnuml=6,num2=7,num3=12;if(+numl=num2)num3=+num3*3;A. 37B. 12C. 36D. 396、设关键字为2,4,7,9,1915,23,27,29,31,35,40
3、,43,50,65的有序文件,当用折半查找算法查找关键字为43时,比较次数为(B)A. 2B. 4C. 6D. 87、对于如下代码段classApublicAfoo()returnthis;classBextendsApublicAfoo()returnthis;classCextendsB()可以放入横线位置,使程序正确编译运行,而且不产生错误的选项是(D)A. publicintfoo()return1;B. publicAfoo()returnA;C. publicvoidfoo()D. publicAfoo(Bb)returnb;8、voidrecursive(intn,intm,in
4、to)(if(n0时,才能进入餐厅用餐B. 新客人来到后应依次执行P(三)操作、用餐、V(三)操作C. 新客人执行P(三)操作后,如发现S0,则应进入等待客人队列中等待D. 执行V(三)操作后,如发现SW0,则应通知等待客人队列中的下一位客人用餐18、当n=l时,T(n)=l;当nl时,T(n)=3T(n3)+n;求该递归方程的时间复杂度(D)A. 0(n2)B. 0(nlog3n)C. 0(n3)D. 0(n)19、classPersonprivateStringname;privateintage;publicPerson(Stringname,intage)this.name=name;
5、this,age=age;J1publicstaticvoidmain(Stringargs)throwsExceptionClaSScIazz=Person,class;Personp=(Person)clazz.newlnstance();System.out.printIn(p=null?false:true);)以上代码的执行结果是(A)A. 运行时抛出异常B. trueC. 编译不通过D. False20、比较Sl和s2指向的两个字符串是否相等,如下表达式中正确的是(C)A. (si.length().equals(s2.length()B. (si=s2)C. (si.equals
6、(S2)D. (si.length()equals(s2)21、以下有关死锁的叙述中,错误的是(D)A. 如果允许进程剥夺使用其他进程占有的资源,就不会出现死锁B. 银行家算法可避免死锁的发生,但需要很大的系统开销C. 系统发生死锁时,死锁进程的个数至少为2个D. 要消除死锁,必须避免在资源分配图中存在环路22、若一棵完全二叉树共有m个结点,则其叶子结点数不可能是(B)oA. (ml)2B. 奇数个叶子结点C. (m-l)2D. m/2多选题1、在语义分析中,符号表用于(AC)A. 语义检查B. 语法检查C. 产生中间代码D. 地址分配2、在下列选项中,创建和启动线程的方程式正确的是:(AB)
7、A. newThreadOpublicvoidrun()doStuff();.start();B. newThread(newRunnableOpublicvoidrun()doStuff();).start();C. newThreadOpublicvoidstrat()doStuff();).run();D. newThread(newRunnableOpublicvoidrun()doStuff();).run();3、以下哪个方法与方法PUbIiCvoidguess(inta)是重载方法(ABD)A. publicvoidguess(inta,intb)B. publicvoidgue
8、ss(longa)C. publicintguess(inta)D. publicvoidguess(floata)4、下列哪些协议属于网络层的协议(ABC)A. IGMPB. ICMPC. ARPD. PPP5、在实际开发过程中,我们需要应用程序中保持唯一的一个实例,即单例模式,以下说法正确的是(BD)A. 其它选项均不正确B. 它具有私有成员变量C. 它拥有公有的构造方法D. 它具有静态公有方法6、在计算机网络中,关于服务与协议的说法中是(CD)A. 服务与协议是完全相分离的B. 服务与协议是相同的概念C. 服务是各层向其上层提供的一组操作,涉及两层间接口的定义及实现D. 协议与服务的具体
9、实现有关7、下面关于设计模式说法错误的是(CD)A. 装饰模式能够动态地为一个对象增加新的职责B. 设计模式的基本要素包括名称、意图、解决方案、参与者和协调者C. 当需要用比较通用和复杂的对象指针代替简单指针时应用职责链模式D. 简单工厂模式的优点是工厂角色可以通过继承而得以复用8、若用一个大小为6的一维数组实现环形队列,且当前rear和front的值分别为1和5,当从队列中删除一个元素,再插入两个元素后,以下说法正确的是(ACD)A. rear的值为3B. front的值为4C. 完成插入删除操作后,队列中元素个数为3D. front的值为01/2幸运序列时间限制:C/C+语言1000MS;
10、其他语言3000MS内存限制:C/C+语言65536KB;其他语言589824KB题目描述:对于一个序列Ai(KiVn),我们称相邻两个数字的绝对值之差为跳数,如果序列Ai的所有跳数包含1到n-1的所有值,则称Ai为幸运序列。例如序列:1423是一个幸运序列,因为所有的跳数分别为3、2和1包含1到nT(n=4)的所有值。你的任务是判断一个序列是否为幸运序列输入每行包含一个整数n(0n烂3000)表示序列长度,后面依次是n个整数Ai(Ai106)输出对于每一行的输入,产生一行输出说Lucksequence,或Unlucksequence”。样例输入56-1241样例输出Unlucksequence2/2数字分组时间限制:C/C+语言1000MS;其他语言3000MS内存限制:C/C+语言65536KB;其他语言589824KB题目描述:给定一组数,问能否分成两组和相等的数,不必用上全部的数字。若能,求各组的和。否则输出Impossible”。输入第一行,一个正整数n(l=n=100),数的个数。第二行n个正整数。这些数的和不超过2000.输出一行。如果能分成两组和相同的数,输出和。否则输出Impossible”,不含引号。样例输入513452样例输出7Hint可以分出3,4与5,2两组数。1保留。