亚信笔试题
亚信科技笔试题答案

亚信科技笔试题答案一、选择题1. 在计算机系统中,用于表示数据地址的数字是()。
A. 奇数B. 偶数C. 内存地址D. 逻辑地址答案:D2. 下列哪个选项不是操作系统的基本功能?()。
A. 文件管理B. 设备管理C. 数据加密D. 进程管理答案:C3. 网络协议TCP/IP中,负责传输层数据传输的是()。
A. IPB. TCPC. UDPD. ICMP答案:B4. 在关系型数据库中,用于创建表的SQL语句是()。
A. SELECTB. INSERTC. CREATE TABLED. UPDATE答案:C5. 以下哪种数据结构是线性表的物理存储方式?()。
A. 链式存储B. 索引存储C. 顺序存储D. 哈希存储答案:C二、填空题1. 在面向对象编程中,______和______是类的三个基本特性之一,它们保证了对象的状态和行为的封装和隐藏。
答案:继承、多态2. HTTP协议是无状态的,通常使用______和______来实现用户会话状态的管理。
答案:Cookies、Session3. 在软件开发过程中,______模式是一种常用于处理多个对象之间交互的模式,它可以将对象之间的耦合度降到最低。
答案:观察者模式三、简答题1. 请简述软件开发过程中的需求分析阶段的主要任务。
答:需求分析阶段的主要任务是明确软件系统的功能和性能要求,包括识别用户的需求、系统的性能指标、操作环境等。
此阶段需要与用户进行充分的沟通,确保需求的完整性和准确性,并通过需求规格说明书等形式进行文档化,为后续的软件设计和开发打下基础。
2. 描述数据库事务的四个基本特性,并举例说明。
答:数据库事务的四个基本特性是原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)。
原子性指事务中的所有操作要么全部完成,要么全部不完成,不会出现只完成部分操作的情况。
一致性指事务必须使数据库从一个一致性状态变换到另一个一致性状态,保证数据库中的数据满足所有的完整性约束。
亚信笔试题

亚信笔试题亚信公司招聘笔试题目一、选择题(每题2分,共20分)1. 在C语言中,下列哪个选项是正确的字符串定义方式?A. char str[10] = "Hello";B. char *str = "Hello";C. char str[] = {'H', 'e', 'l', 'l', 'o', '\0'};D.以上全是2. 计算机网络中,HTTP协议通常使用哪个端口进行通信?A. 21B. 25C. 80D. 1103. 以下关于数据库事务的描述,哪一项是错误的?A. 事务具有原子性;B. 事务具有一致性;C. 事务具有持久性;D. 事务具有逆变性;4. 在软件开发过程中,哪种设计模式可以处理对象间的多对多关系?A. 单例模式B. 工厂模式C. 观察者模式D. 适配器模式5. 下列哪个算法不属于动态规划算法?A. 斐波那契数列B. 背包问题C. 最长公共子序列D. 二分查找6. 在Java中,final关键字的作用是什么?A. 声明常量B. 声明抽象方法C. 限制方法被重写D. 限制变量只能被赋值一次7. 以下哪个操作系统是开源的?A. WindowsB. MacOSC. LinuxD. Unix8. 软件工程中,哪个过程负责定义软件的功能性和非功能性需求?A. 需求分析B. 设计C. 实现D. 测试9. 在HTML中,用于插入图像的标签是什么?A. <img>B. <image>C. <picture>D. <graphic>10. 数据结构中,二叉搜索树的特点是什么?A. 节点的左子树只包含小于当前节点的数B. 节点的右子树只包含大于当前节点的数C. A和B都对D. A和B都错二、简答题(每题10分,共30分)11. 请简述面向对象编程中的三个基本特性。
亚信校招笔试题目

1.BSTpublicclassBSTMinLength{publicstaticvoidmain(String[]args){TreeNodetNode11=newTreeNode(10,null,null); TreeNodetNode12=newTreeNode(50,null,null); TreeNodetNode13=newTreeNode(5,null,null); TreeNodetNode14=newTreeNode(30,null,null); TreeNodetNode21=newTreeNode(30,tNode11,tNode12); TreeNodetNode22=newTreeNode(30,tNode13,tNode14); TreeNodetNodeRoot=newTreeNode(100,tNode21,tNode22);}privatestaticintminlength(TreeNodetNode){if(tNode!=null){returngetlength(tNode,0);}return-1;}privatestaticintgetlength(TreeNodetNode,intcurLength){ intminLeft=-1;intminRight=-1;if(tNode.leftNode!=null){minLeft=getlength(tNode.leftNode,curLength+tNode.value);}if(tNode.rightNode!=null){minRight=getlength(tNode.rightNode,curLength+tNode.valu e);}if(tNode.leftNode==null&&tNode.rightNode==null){returncurLength+tNode.value;}if(tNode.leftNode==null){returnminRight;}if(tNode.rightNode==null){returnminLeft;}returnminLeft>minRight?minRight:minLeft;}}classTreeNode{intvalue;TreeNodeleftNode;TreeNoderightNode;TreeNode(intvalue,TreeNodelefeNode,TreeNoderightNode){this.value=value;this.leftNode=lefeNode;this.rightNode=rightNode;}}2.lru#include<iostream>usingnamespacestd;intlruCountMiss(intmax_cache_size,int*pages,intlen) {intcount=0;inti,j,k,n;boolflag=false;int*a=newint[max_cache_size];//初始化高速缓存数组for(i=0;i<max_cache_size;i++){a[i]=-1;}for(j=0;j<len;j++){for(i=0;i<max_cache_size;i++){if(pages[j]!=a[i]){continue;}else{break;}}if(i!=max_cache_size){for(k=i;k<max_cache_size;k++) {if(a[k]==-1){flag=true;break;}}if(!flag){for(n=i;n<max_cache_size-1;n++) {a[n]=a[n+1];}a[max_cache_size-1]=pages[j]; }else{flag=false;for(n=i;n<k-1;n++){a[n]=a[n+1];}a[k-1]=pages[j];}}else{count++;for(i=0;i<max_cache_size;i++) {if(a[i]==-1){a[i]=pages[j];flag=true;break;}}if(!flag){for(i=0;i<max_cache_size-1;i++) {a[i]=a[i+1];}a[max_cache_size-1]=pages[j];}elseflag=false;}}returncount;}intmain(){intarr[]={7,0,1,2,0,3,0,4};cout<<lruCountMiss(3,arr,8)<<endl; return0;}3.反转链表lnode*reverse(lnode*head){if(head){lnode*prev=NULL;lnode*curr=head;lnode*next=curr->next;curr->next=prev;while(next!=NULL){prev=curr;curr=next;next=next->next;curr->next=prev;}returncurr;}else{returnhead;}};lnode*reverseLinkedList(lnode*list){ if(list){lnode*ori=list;lnode*half=list;lnode*prev=list;while(list&&half&&half->next){prev=list;list=list->next;half=half->next;if(half){half=half->next;}if(list){prev->next=reverse(list);}returnori;}returnlist;}4.SJFfloatwaitingTimeSJF(int*requestTimes,int*durations,intn ){int*flags=newint[n];floatsums=0;for(inti=0;i<n;i++){flags[i]=-1;}intnowtime=0;for(inti=0;i<n;i++){intcount=0;for(intk=0;k<n;k++){if(count==0){if(requestTimes[k]<=nowtime&&durations[k]>=0){flags[count++]=k;}else{if(durations[k]>=0&&requestTimes[k]<=nowtime){ if(durations[k]<durations[flags[0]]){count=1;flags[0]=k;}elseif(durations[k]==durations[flags[0]]){ flags[count++]=k;}}}}if(count==0){count=1;for(intj=0;j<n;j++){if(durations[j]>=0){flags[0]=j;nowtime=requestTimes[j];}}}intidx=flags[0];intminreq=requestTimes[flags[0]];intmindrus=durations[idx];if(count>1){for(intj=1;j<count;j++){if(requestTimes[flags[j]]<minreq){ minreq=requestTimes[flags[j]];idx=flags[j];}}}sums+=nowtime-requestTimes[idx]; nowtime+=durations[idx];requestTimes[idx]=-1;durations[idx]=-1;}returnsums/n;}5无向连通判断是否为树#include<stdio.h>#include<stdlib.h>#include<string.h>constintN=10000,M=100000;booledge[N][N];//数组记录两点是否存在边boolvisit[N];//标记该节点是否访问过boolDFS_check(intx,inty=-1){if(visit[x])returnfalse;visit[x]=true;inti;for(i=0;i<N;i++)if(edge[x][i]&&i!=y)if(visit[i])returnfalse;elseif(!DFS_check(i,x))returnfalse;returntrue;}intmain(){intn,m;scanf("%d%d",&n,&m);memset(edge,false,sizeof(edge)); inti,x,y;for(i=0;i<m;i++){scanf("%d%d",&x,&y);edge[x-1][y-1]=true;edge[y-1][x-1]=true;}memset(visit,false,sizeof(visit)); boolresult=DFS_check(0);if(result)for(i=0;i<n;i++)if(!visit[i])result=false;if(result)printf("Yes!\n");elseprintf("No!\n");system("pause");return0;}6.老鼠奶酪#include<iostream> usingnamespacestd;intisPath(int**grid,intm,intn); struct_TraversedNode{intx;inty;_TraversedNode*next;};struct_Node{intx;inty;};intmain(intargc,constchar*argv[]){int**grid=newint*[8];for(inti=0;i<8;i++){grid[i]=newint[8];}grid[0][0]=1;grid[0][1]=1;grid[0][2]=0;grid[0][3]=0;gri d[0][4]=0;grid[0][5]=0;grid[0][6]=0;grid[0][7]=1;grid[1][0]=1;grid[1][1]=1;grid[1][2]=1;grid[1][3]=1;gri d[1][4]=1;grid[1][5]=1;grid[1][6]=1;grid[1][7]=1;grid[2][0]=1;grid[2][1]=0;grid[2][2]=0;grid[2][3]=0;gri d[2][4]=1;grid[2][5]=0;grid[2][6]=0;grid[2][7]=1;grid[3][0]=1;grid[3][1]=1;grid[3][2]=1;grid[3][3]=0;gri d[3][4]=1;grid[3][5]=0;grid[3][6]=0;grid[3][7]=1;grid[4][0]=0;grid[4][1]=1;grid[4][2]=0;grid[4][3]=0;gri d[4][4]=1;grid[4][5]=1;grid[4][6]=1;grid[4][7]=1;grid[5][0]=0;grid[5][1]=1;grid[5][2]=0;grid[5][3]=0;gri d[5][4]=0;grid[5][5]=0;grid[5][6]=0;grid[5][7]=1;grid[6][0]=0;grid[6][1]=1;grid[6][2]=0;grid[6][3]=9;gri d[6][4]=1;grid[6][5]=1;grid[6][6]=1;grid[6][7]=1;grid[7][0]=0;grid[7][1]=1;grid[7][2]=1;grid[7][3]=1;gri d[7][4]=0;grid[7][5]=0;grid[7][6]=1;grid[7][7]=0;for(inti=0;i<8;i++){for(intj=0;j<8;j++)cout<<grid[i][j]<<"";;cout<<endl;}returnisPath(grid,8,8);}intisPath(int**grid,intm,intn)if(grid[0][0]==0)return0;if(grid[0][0]==9)return1;intstep=0;boolflag_down_success=true;boolflag_up_success=true;boolflag_left_success=true;boolflag_right_success=true;_TraversedNode*p=NULL;_TraversedNode*p_check=NULL;_TraversedNode*head=NULL;_TraversedNode*TraversedNode=new_TraversedNode; TraversedNode->x=0;TraversedNode->y=0;head=TraversedNode;p=TraversedNode;p->next=NULL;intcount_node=0;intnum_node=1;_Node*node=new_Node[n+m];_Node*node_next=new_Node[n+m];node[0].x=0;node[0].y=0;while(1)for(inti=0;i<num_node;i++){if(node[i].x+1<=m-1){if(grid[node[i].x+1][node[i].y]!=0){if(grid[node[i].x+1][node[i].y]==9){step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x+1)&&(p_check->y==node[i].y)) {p_check=NULL;flag_down_success=false;}else{p_check=p_check->next;}if(flag_down_success){TraversedNode=new_TraversedNode; TraversedNode->x=node[i].x+1; TraversedNode->y=node[i].y;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x+1; node_next[count_node].y=node[i].y; count_node++;}flag_down_success=true;}}if(node[i].x-1>=0){if(grid[node[i].x-1][node[i].y]!=0) {if(grid[node[i].x-1][node[i].y]==9) {step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x-1)&&(p_check->y==node[i].y)) {p_check=NULL;flag_up_success=false;}else{p_check=p_check->next;}}if(flag_up_success){TraversedNode=new_TraversedNode;TraversedNode->x=node[i].x-1;TraversedNode->y=node[i].y;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x-1;node_next[count_node].y=node[i].y;count_node++;}flag_up_success=true;}}if(node[i].y+1<=n-1){if(grid[node[i].x][node[i].y+1]!=0){if(grid[node[i].x][node[i].y+1]==9){step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x)&&(p_check->y==node[i].y+1)) {p_check=NULL;flag_right_success=false;}else{p_check=p_check->next;}}if(flag_right_success){TraversedNode=new_TraversedNode; TraversedNode->x=node[i].x; TraversedNode->y=node[i].y+1;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x; node_next[count_node].y=node[i].y+1; count_node++;}flag_right_success=true;}}if(node[i].y-1>=0){if(grid[node[i].x][node[i].y-1]!=0){if(grid[node[i].x][node[i].y-1]==9){step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x)&&(p_check->y==node[i].y-1)) {p_check=NULL;flag_left_success=false;}else{p_check=p_check->next;}}if(flag_left_success){TraversedNode=new_TraversedNode;TraversedNode->x=node[i].x;TraversedNode->y=node[i].y-1;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x; node_next[count_node].y=node[i].y-1; count_node++;}flag_left_success=true;}}}if(count_node==0){cout<<"不存在到达终点的路径"<<endl; return0;break;}step++;num_node=count_node;count_node=0;for(inti=0;i<num_node;i++){node[i].x=node_next[i].x;node[i].y=node_next[i].y;cout<<"("<<node[i].x<<","<<node[i].y<<")";}cout<<endl;}}7.格雷码public?static?int?gray(byte?term1,byte?term2){ int?n=0;for(int?i=0;i<8;i++){byte?t1,t2,ch;ch?=?(byte)0x01;t1=term1&ch;t2=term2&ch;if((t1^t2)==ch){n++;}term1=(byte)(term1>>1);term2=(byte)(term>>1);}if(n==1)return?1;elsereturn0;}8.#include<iostream>usingnamespacestd;voidmyPrint(intn){if(1==n){cout<<"1*2"<<endl;return;}intlastnumber=n*(n+1);//每一行最后一个数intfirst=1;//每一行第一个数intnum=1;intstep=n;for(inti=1;i<=n;i++){for(intj=1;j<i;j++)//输出‘-’cout<<'-';num=first;for(intl=0;l<(n-i+1);l++)//每一行的前半部分{cout<<num<<"*";num++;}num=lastnumber-step+1;cout<<num;num++;for(l=0;l<(n-i);l++)//每一行的后半部分{cout<<"*"<<num;num++;}cout<<endl;//修改first和lastnumberfirst=first+step;lastnumber=lastnumber-step;step--;}}intmain(){intn;while(cin>>n){myPrint(n);}return0;}9短作业优先调度算法(SJF)publicclassShortJobFirst{publicstaticvoidmain(String[]args){int[]requestTimes={0,2,4,5};int[]durations={7,4,1,4};floataverageWaitingTime=ShortJobFirst.minWaitingTime(re questTimes,durations);}/****@paramrequestTimes任务提交时间*@paramdurations任务服务时间*@return*/publicstaticfloatminWaitingTime(int[]requestTimes,int[] durations){if(requestTimes==null||durations==null)return-1;if(requestTimes.length!=durations.length)return-1;intn=requestTimes.length;int[]durationTimes=copyArray(durations);//复制一份服务时间int[]startTimes=newint[n];//开始时间int[]endTime=newint[n];//结束时间int[]waitingTime=newint[n];//等待时间int[]cycleTime=newint[n];//周转时间//第一个执行任务的开始时间、结束时间、等待时间startTimes[0]=requestTimes[0];endTime[0]=startTimes[0]+durations[0];waitingTime[0]=0;/**核心代码**/intlastIndex=0;//上一次执行任务的索引intminIndex=0;//最短任务的索引for(inti=1;i<n;i++){minIndex=getMinIndex(durations);//作曲最短任务索引为当前任务startTimes[minIndex]=endTime[lastIndex];//当前任务的开始时间为上一个任务的结束时间endTime[minIndex]=startTimes[minIndex]+durationTimes[mi nIndex];//结束时间=开始时间+服务时间waitingTime[minIndex]=startTimes[minIndex]-requestTimes[minIndex];//等待时间=开始时间-提交时间cycleTime[minIndex]=endTime[minIndex]-requestTimes[minIndex];//周转时间=结束时间-提交时间lastIndex=minIndex;//更新当前任务索引为下一次循环中的“上一次任务索引”}//计算平均等待时间ints=0;for(inti:waitingTime)s+=i;floataverageTime=(float)s/(float)n;returnaverageTime;}//获取最短任务索引,获取完成之后,该任务的服务时间置为最大值,从下一次寻找最短任务的过程中排除。
亚信联创初试笔试题(A)

考评笔试题一、技术题(60分)1、(5分)请用代码来描述什么是重载(Overload)?什么是重写(Override)?2、(5分)List<String> 转换为String[]常用方法有?3、(5分)select deptID from Dept where deptID = 1 group by deptID order by deptID 的查询顺序?4、(5分)在用集合存储数据时,什么情况下使用HashMap(),什么情况下使用LinkedHashMap()?5、(5分)在eMan系统中,请用代码获取TOMCAT的路径?6、(5分)使用ajax时,都需要xmlhttprequest对象获得返回值,在IE中如何创建xmlhttprequest对象?7、(5分)项目开发中,什么情况下使用静态变量?什么情况下使用非静态全局变量?8、(5分)在eMan系统中所有跳转都使用了forward,它与redirect的区别是什么?9、(10分)SqlServer 2005,表名:t_node,如右图请用你认为最优的代码显示出父节点“a”下所有子节点。
已知条件:parent=“a”10、(10分)SqlServer 2005,表名:OperationActualHours,human请用你认为最优的代码显示如下格式数据,已知条件:operationID in (44,45)关于第9和10题,任何语言都可以,但一定是你自己认为最优的代码,并说说为什么要这样实现?二、开放题(40分)11、你认为较半年前自己最大的进步是什么?你对自己目前的工作效率满意吗?为什么?12、你目前学习的新技术是什么?为什么要学习它?13、在你目前负责的项目中,你最想改变的是什么?为什么?具体改变的步骤是什么?14、请给自己在半年内的表现打个分(满分100);你如何在下半年提高这个分数?。
亚信笔试题B卷以及答案修订稿

亚信笔试题B卷以及答案WEIHUA system office room 【WEIHUA 16H-WEIHUA WEIHUA8Q8-亚信联创科技校园招聘B卷考试时间 60_分钟 _ 考试方式(闭)卷第一部分——计算机基础一、选择题(每题2分,总分40分)1.CPU状态分为目态和管态两种,什么是从目态转换到管态的唯一途径 ( D )A.运行进程修改程序状态字B.进程调度程序C.中断屏蔽D.中断2.引入多道程序设计的目的是( C )A.增强系统的用户友好性B.提高系统实用性C.充分利用CPUD. 扩充内存容量3.Windows系统是一个(B )操作系统。
A、单用户单系统B、单用户多任务C、多用户单任务D、多用户多任务4.在半导体存储器中,动态随机存储器DRAM的特点是(D )。
A、按位结构方式存储B、按字结构方式储存C、信息在储存介质中移动D、每隔一定时间进行一次刷新5.单地址指令的格式是由( B)构成。
A、操作码和操作数地址B、操作码和原操作数地址C、操作码和目的操作数地址D、操作码和下一条指令地址6.八进制数76转换为二进制数为(C )A、110111B、111101C、111110D、1111117.80486型号的微处理器能同时处理的二进制位数是(C )位。
A、8B、16C、32D、648.下面关于串的的叙述中,哪一个是不正确的(B )A.串是字符的有限序列B.空串是由空格构成的串C.模式匹配是串的一种重要运算D.串既可以采用顺序存储,也可以采用链式存储9.若串S1=‘ABCDEFG’, S2=‘9898’ ,S3=‘###’,S4=‘012345’,执行concat(replace(S1,substr(S1,length(S2),length(S3)),S3),substr(S4,index(S2,‘8’),length(S2)))其结果为()A.ABC###G0123B.ABCD###2345C.ABC###G1234D.ABCD###123410.设有两个串p 和q,其中q 是p 的子串,求q 在p 中首次出现的位置的算法称为(C )A.求子串 B.联接 C.匹配 D.求串长11. 下列字符中,ASCII码值最大的是 ( D )。
亚信笔试题正常

第一部分JAVA语言基础一、选择题1、若所用变量都以正确定义,一下选项中,非法的表达式是CA a!=4||b==1B‘a’%3C‘a’=1/2D‘A’+322、下列语句序列执行后,j的值是A5B6C7D83、java语言的类间的继承关系是BA多重的B单重的C线程的D不能继承4、下列定义中,不正确的是 CA class x{…}B class x extends y {…}C static class x implements y1,y2{…}D public class x extends Applet{…}5、定义java Applet程序时,必须有的import语句是AA import java.applet.Applet;B import java.io.*C import java.awt.event;D import ng.*;6、下列方法定义中,不正确的是DA public int x( ){…}B public static int x(double y){…}C void x (double d){…}D public static x (double a){…}7、下列的哪个选项可以正确表达八进制8 CA0x8B0x10C08D0108、下列关于继承的哪项叙述是正确的CA在java中允许多重继承B在java中一个类只能实现一个接口C在java中一个类不能同时继承一个类和实现一个接口D java的单一继承使代码更可靠字串19、若已定义byte[]x={11,22,33,-66};其中0<=k<=3,则对x数组元素错误的引用时cA x[5-3]B x[k]C x[k+5]D x[0]10、给出下列代码,如何是成员变量m被方法fun()直接访问 -----成员变量在类中定义,局部变量在方法中定义 CClass test{Private int m;Public static void fun(){…}}A将private int m 改为 protected int mB将private int m 改为 public int mC将private int m 改为 static int mD将 private int m 改为 int m11、Given: F1public class Alphal{2public static void main(String[] args){3boolean flag; int i=0;1do{2flag = false;3system.out.println(i++);4flag = 1 < 105continue;6}while((flag)?True;false);7}8}What is result?A0000000000B0123456789C Compilation failsD The code runs with no output.E The code enters an infinite loopF An exception is thrown at runtime e.12、Given() D1package foo;23 import java.Util.Vector;45protected class MyVector Vector{6int i=1;7public MyVector()8i=2 ;9}10}1112public class MyNewVector extends MyVector{13public MyNewVector(){14i=4;15}16public static void main(String args[]){17MyVector v=new MyNewVector18}19}what is the result?()A. Compilation succeedsB. Compilation falis because of an error at line5C. Compilation falis because of an error at line6D. Compilation falis because of an error at line14E. Compilation falis because of an error at line1713、Given:()1class Super{2public integer getlength(){3return new integer(4);}}45public class Sub extends Super}6public Long GetLength(){return new Long(5);}78public static void main(String[] args){9Super sooper = new Super();10Sub sub = new Sub();11System.out.println(12sooper.getLength().toString()+","+13sub.getLength().toString() );14}15}What is the output?A.4,4B.4,5C.5,4D.5,5pilation fails.14、Given:1 public class Test{2 public static String output=....;34 public static void foo (int){5 try{6 if(i==1){7 throw new Exception();8 }9 output+="2";10 }11 Catch(Exception e){12 OutPut+="1";13 Return;14 }15 Finally{16 Output+="3";17 }18 Output+="4"19 }2021 Public static void main(string args[]){22 Foo(0);23 Foo(1);2425 }26 }What is the value of the variable output at line 23?15、Given:() D1 class Base{2 Base(){System.out.print("Base");}3 }4 public class Alpha extends Base{5 public static void main(String []args){6 new Alpha();7 new Base();8 }9 }What is the result?A. BaseB. Basebasec. Compilation fails.D. The code runs with no output.E. An exception is thrown at runtime.16、Given:1 int l=1,j=-1;2 switch(i){3 case 0,1:j=1;4 case 2;j=2;5 default;j=0;6 }7 System.out.println("j="+j);What is the result?A.j=-1B.j=0C.j=1D.j=2pilation fails.---------------17、Which two are valid declarations within an interface definition?(Choose two)A. void methoda();B. public double methoda();C. public final double methoda();D. static void methoda(double dl);E. Protected void methoda(double dl);18、Which two allow the class Thing to be instantiated using new Thing()? (Choose two)A. public class thing{}B. public class thing{public thing(){}}C. public class thing{public thing(void){}}D. public class thing{public thing(String s){} }E. public class thing{public thing(){} public thing(String s){} }19、Given:1 public class X{2 public static void main(String[] args){3 try{4 badMethod()5System.out.print(“A”);6}7catch (Exception ex){8System.out.print(“B”);9}10Finally{11System.out.print(“C”);12}13System.out.print(“D”);14}15public static void badMethod(){16throw new RuntimeException();17}18}What is the result?A.ABB.BCC.ABCD.BCDpilation fails20、 Given:1class TestA{2TestB b;3TestA() {4 b = new testB(this);5}6}7class TestB {8TestA a;9TestB(TestA a){10this.a = a;11}12}13Class TestA11 {14public static void main (String args[]){15new TestA11().makeThings();16//…code continues on17}18void makeThings(){19TestA test = new TestA();20}21}Which two statements are true after line 15 before main completes?(Choose two)A.Line 15 causes a stack overflow.B.An exception is thrown at runtime.C.The object referenced by a is eligible for garbage collection.D.The object referenced by b is eligible for garbage collection.E.The object referenced by a is not eligible for garbage collection.F.The object referenced by b is not eligible for garbage collection.二、简答题(共6题,每题5分,共30分)1、java中作用域public,private,protected以及不写时的区别2、列出java中所有基本数据类型,并说明这些数据类型占用的字节数?同时说明基本数据类型和其他类型在使用上的区别?3、请详细阐述static在java中的应用?4、请阐述抽象类、继承、接口的概念及相互关系?5、Try{ }里有一个return语句,那么紧跟在这个try后的finally{ }里的code会不会被执行,什么时候被执行,在return前还是后?6、GC是什么?为什么要有GC。
亚信校招笔试题目

public class BSTMinLength {public static void main(String[] args) {TreeNode tNode11 = new TreeNode(10, null, null);TreeNode tNode12 = new TreeNode(50, null, null);TreeNode tNode13 = new TreeNode(5, null, null);TreeNode tNode14 = new TreeNode(30, null, null);TreeNode tNode21 = new TreeNode(30, tNode11, tNode12);TreeNode tNode22 = new TreeNode(30, tNode13, tNode14);TreeNode tNodeRoot = new TreeNode(100, tNode21, tNode22); System.out.println(minlength(tNodeRoot));}private static int minlength(TreeNode tNode){if (tNode != null) {return getlength(tNode,0);}return -1;}private static int getlength(TreeNode tNode,int curLength) {int minLeft=-1;int minRight=-1;if (tNode.leftNode!=null){minLeft=getlength(tNode.leftNode, curLength+tNode.value); }if (tNode.rightNode!=null) {minRight=getlength(tNode.rightNode, curLength+tNode.value); }if (tNode.leftNode==null && tNode.rightNode==null) {return curLength+tNode.value;if (tNode.leftNode==null) {return minRight;}if (tNode.rightNode==null) {return minLeft;}return minLeft>minRight? minRight:minLeft;}}class TreeNode {int value;TreeNode leftNode;TreeNode rightNode;TreeNode(int value, TreeNode lefeNode, TreeNode rightNode) { this.value = value;this.leftNode = lefeNode;this.rightNode = rightNode;}}2.lru#include <iostream>using namespace std;int lruCountMiss(int max_cache_size, int *pages, int len){int count = 0;int i,j,k,n;bool flag = false;int *a = new int[max_cache_size];//初始化高速缓存数组for(i = 0; i < max_cache_size; i++){a[i] = -1;}for(j= 0; j < len; j++){for(i = 0; i < max_cache_size; i++){if(pages[j] != a[i]){continue;}else{break;}}if(i != max_cache_size){for(k = i; k < max_cache_size; k++){if(a[k] == -1){flag = true;break;}}if(!flag){for(n = i; n < max_cache_size - 1; n++)a[n] = a[n+1];}a[max_cache_size - 1] = pages[j];}else{flag = false;for(n = i; n < k - 1; n++){a[n] = a[n+1];}a[k - 1] = pages[j];}}else{count ++;for(i = 0; i < max_cache_size; i++){if(a[i] == -1){a[i] = pages[j];flag = true;break;}}if(!flag){for(i = 0; i < max_cache_size-1; i++)a[i] = a[i+ 1];}a[max_cache_size - 1] = pages[j]; }elseflag = false;}}return count;}int main(){int arr[] = {7, 0, 1, 2, 0, 3, 0, 4};cout << lruCountMiss(3, arr, 8) << endl; return 0;}3.反转链表lnode *reverse(lnode *head){if(head){lnode *prev = NULL;lnode *curr = head;lnode *next = curr->next;curr->next = prev;while(next != NULL){prev = curr;curr = next;next = next->next;curr->next = prev;}return curr;}else{return head;}};lnode *reverseLinkedList(lnode *list){if(list){lnode *ori = list;lnode *half = list;lnode *prev = list;while(list && half && half->next){prev = list;list = list->next;half = half->next;if(half){half = half->next;}}if(list){prev->next = reverse(list);}return ori;}return list;}4. SJFfloat waitingTimeSJF(int * requestTimes, int * durations,int n){ int *flags = new int[n];float sums = 0;for(int i = 0 ;i< n; i++){flags[i] = -1;}int nowtime = 0;for( int i = 0; i< n; i++ ){int count = 0;for(int k = 0; k< n;k++){if(count == 0){if(requestTimes[k] <= nowtime && durations[k] >=0 ){ flags[count++] = k;}}else{if(durations[k] >=0 && requestTimes[k] <= nowtime ){ if( durations[k] < durations[flags[0]]){count = 1;flags[0] = k;}else if( durations[k] == durations[flags[0]] ){flags[count++] = k;}}}}if(count == 0){count = 1;for(int j = 0; j< n ;j++){if(durations[j] >=0 ){flags[0] = j;nowtime = requestTimes[j];}}}int idx = flags[0];int minreq = requestTimes[ flags[0] ];int mindrus = durations[idx];if(count > 1){for(int j = 1; j < count ;j++){if(requestTimes[flags[j]] < minreq ){ minreq =requestTimes[flags[j]]; idx = flags[j];}}}sums += nowtime - requestTimes[idx];nowtime += durations[idx];requestTimes[idx] = -1;durations[idx] = -1;}return sums/n;}5 无向连通判断是否为树#include<stdio.h>#include<stdlib.h>#include<string.h>const int N=10000, M=100000;bool edge[N][N]; // 数组记录两点是否存在边bool visit[N]; // 标记该节点是否访问过bool DFS_check(int x, int y=-1) {if (visit[x])return false;visit[x] = true;int i;for (i=0;i<N;i++)if (edge[x][i] && i!=y)if (visit[i])return false;elseif (!DFS_check(i, x))return false;return true;}int main(){int n,m;scanf("%d%d",&n,&m);memset(edge,false,sizeof(edge)); int i,x,y;for (i=0;i<m;i++){scanf("%d%d",&x,&y);edge[x-1][y-1] = true;edge[y-1][x-1] = true;}memset(visit,false,sizeof(visit)); bool result = DFS_check(0);if (result)for (i=0;i<n;i++)if (!visit[i])result = false;if (result)printf("Yes!\n");elseprintf("No!\n");system("pause");return 0;}6. 老鼠奶酪#include <iostream>using namespace std;int isPath(int **grid, int m, int n);struct _TraversedNode{int x;int y;_TraversedNode *next;};struct _Node{int x;int y;};int main(int argc, const char * argv[]){int **grid= new int*[8];for(int i=0;i<8;i++){grid[i]= new int[8];}grid[0][0]=1; grid[0][1]=1; grid[0][2]=0; grid[0][3]=0; grid[0][4]=0; grid[0][5]=0; grid[0][6]=0; grid[0][7]=1;grid[1][0]=1; grid[1][1]=1; grid[1][2]=1; grid[1][3]=1; grid[1][4]=1; grid[1][5]=1; grid[1][6]=1; grid[1][7]=1;grid[2][0]=1; grid[2][1]=0; grid[2][2]=0; grid[2][3]=0; grid[2][4]=1; grid[2][5]=0; grid[2][6]=0; grid[2][7]=1;grid[3][0]=1; grid[3][1]=1; grid[3][2]=1; grid[3][3]=0; grid[3][4]=1; grid[3][5]=0; grid[3][6]=0; grid[3][7]=1;grid[4][0]=0; grid[4][1]=1; grid[4][2]=0; grid[4][3]=0; grid[4][4]=1; grid[4][5]=1; grid[4][6]=1; grid[4][7]=1;grid[5][0]=0; grid[5][1]=1; grid[5][2]=0; grid[5][3]=0; grid[5][4]=0; grid[5][5]=0; grid[5][6]=0; grid[5][7]=1;grid[6][0]=0; grid[6][1]=1; grid[6][2]=0; grid[6][3]=9; grid[6][4]=1; grid[6][5]=1; grid[6][6]=1; grid[6][7]=1;grid[7][0]=0; grid[7][1]=1; grid[7][2]=1; grid[7][3]=1; grid[7][4]=0; grid[7][5]=0; grid[7][6]=1; grid[7][7]=0;for(int i=0;i<8;i++){for(int j=0;j<8;j++)cout<<grid[i][j]<<" ";;cout<<endl;}return isPath(grid,8,8);}int isPath(int **grid, int m, int n){if(grid[0][0]==0) return 0;if(grid[0][0]==9) return 1;int step=0;bool flag_down_success=true;bool flag_up_success=true;bool flag_left_success=true;bool flag_right_success=true;_TraversedNode *p=NULL;_TraversedNode *p_check=NULL;_TraversedNode *head=NULL;_TraversedNode *TraversedNode = new _TraversedNode;TraversedNode->x=0;TraversedNode->y=0;head=TraversedNode;p=TraversedNode;p->next=NULL;int count_node=0;int num_node=1;_Node *node=new _Node[n+m];_Node *node_next=new _Node[n+m];node[0].x=0;node[0].y=0;while(1){for(int i=0;i<num_node;i++){if(node[i].x+1<=m-1){if(grid[node[i].x+1][node[i].y]!=0){if(grid[node[i].x+1][node[i].y]==9){step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return 1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x+1)&&(p_check->y==node[i].y)) {p_check=NULL;flag_down_success=false;}else{p_check=p_check->next;}}if(flag_down_success){TraversedNode=new _TraversedNode;TraversedNode->x=node[i].x+1;TraversedNode->y=node[i].y;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x+1;node_next[count_node].y=node[i].y;count_node++;}flag_down_success=true;}}if(node[i].x-1>=0){if(grid[node[i].x-1][node[i].y]!=0){if(grid[node[i].x-1][node[i].y]==9){step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return 1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x-1)&&(p_check->y==node[i].y)) {p_check=NULL;flag_up_success=false;}else{p_check=p_check->next;}}if(flag_up_success){TraversedNode=new _TraversedNode; TraversedNode->x=node[i].x-1;TraversedNode->y=node[i].y;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x-1; node_next[count_node].y=node[i].y; count_node++;}flag_up_success=true;}}if(node[i].y+1<=n-1){if(grid[node[i].x][node[i].y+1]!=0){if(grid[node[i].x][node[i].y+1]==9){step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return 1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x)&&(p_check->y==node[i].y+1)) {p_check=NULL;flag_right_success=false;}else{p_check=p_check->next;}}if(flag_right_success){TraversedNode=new _TraversedNode;TraversedNode->x=node[i].x;TraversedNode->y=node[i].y+1;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x;node_next[count_node].y=node[i].y+1;count_node++;}flag_right_success=true;}}if(node[i].y-1>=0){if(grid[node[i].x][node[i].y-1]!=0){if(grid[node[i].x][node[i].y-1]==9){step++;cout<<"可以最短"<<step<<"步到达终点"<<endl;return 1;}p_check=head;while(p_check!=NULL){if((p_check->x==node[i].x)&&(p_check->y==node[i].y-1)) {p_check=NULL;flag_left_success=false;}else{p_check=p_check->next;}}if(flag_left_success){TraversedNode=new _TraversedNode;TraversedNode->x=node[i].x;TraversedNode->y=node[i].y-1;p->next=TraversedNode;p=TraversedNode;p->next=NULL;node_next[count_node].x=node[i].x; node_next[count_node].y=node[i].y-1; count_node++;}flag_left_success=true;}}}if(count_node==0){cout<<"不存在到达终点的路径"<<endl;return 0;break;}step++;num_node=count_node;count_node=0;for(int i=0;i<num_node;i++){node[i].x=node_next[i].x;node[i].y=node_next[i].y;cout<<"("<<node[i].x<<","<<node[i].y<<") "; }cout<<endl;}}7.格雷码import java.util.Scanner;public static int gray(byte term1,byte term2){int n=0;for(int i=0;i<8;i++){byte t1,t2,ch;ch = (byte)0x01;t1=term1&ch;t2=term2&ch;if((t1^t2)==ch){n++;}term1=(byte)(term1>>1);term2=(byte)(term>>1);}if(n==1)return 1;elsereturn0;}8.#include <iostream>using namespace std;void myPrint(int n){if(1 == n){cout << "1*2" <<endl;return;}int lastnumber = n*(n+1);//每一行最后一个数int first=1;//每一行第一个数int num=1;int step=n;for(int i=1;i<=n;i++){for(int j=1;j<i;j++)//输出‘-’cout<<'-';num = first;for(int l=0;l<(n-i+1);l++)//每一行的前半部分{cout << num << "*";num++;}num = lastnumber - step+1;cout << num ;num++;for( l=0;l<(n-i);l++)//每一行的后半部分{cout << "*"<<num;num++;}cout << endl;//修改first和lastnumberfirst = first+step;lastnumber = lastnumber - step;step--;}}int main(){int n;while(cin>>n){myPrint(n);}return 0;}9短作业优先调度算法(SJF)public class ShortJobFirst {public static void main(String[] args) {int[] requestTimes = {0, 2, 4, 5};int[] durations = {7, 4, 1, 4};float averageWaitingTime = ShortJobFirst.minWaitingTime(requestTimes, durations);System.out.println(averageWaitingTime);}/**** @param requestTimes 任务提交时间* @param durations 任务服务时间* @return*/public static float minWaitingTime(int[] requestTimes, int[] durations) {if(requestTimes == null || durations == null)return -1;if(requestTimes.length != durations.length)return -1;int n = requestTimes.length;int[] durationTimes = copyArray(durations); // 复制一份服务时间int[] startTimes = new int[n]; // 开始时间int[] endTime = new int[n]; // 结束时间int[] waitingTime = new int[n]; // 等待时间int[] cycleTime = new int[n]; // 周转时间// 第一个执行任务的开始时间、结束时间、等待时间startTimes[0] = requestTimes[0];endTime[0] = startTimes[0] + durations[0];waitingTime[0] = 0;/** 核心代码 **/int lastIndex = 0; // 上一次执行任务的索引int minIndex = 0; // 最短任务的索引for(int i = 1; i < n; i++) {minIndex = getMinIndex(durations); // 作曲最短任务索引为当前任务startTimes[minIndex] = endTime[lastIndex]; // 当前任务的开始时间为上一个任务的结束时间endTime[minIndex] = startTimes[minIndex] + durationTimes[minIndex]; // 结束时间 = 开始时间 + 服务时间waitingTime[minIndex] = startTimes[minIndex] - requestTimes[minIndex]; // 等待时间 = 开始时间 - 提交时间cycleTime[minIndex] = endTime[minIndex] - requestTimes[minIndex]; // 周转时间 = 结束时间 - 提交时间lastIndex = minIndex; // 更新当前任务索引为下一次循环中的“上一次任务索引”}// 计算平均等待时间int s = 0;for(int i : waitingTime)s += i;float averageTime = (float) s / (float) n;return averageTime;}// 获取最短任务索引,获取完成之后,该任务的服务时间置为最大值,从下一次寻找最短任务的过程中排除。
亚信笔试题正常

第一部分JAVA语言基础一、选择题1、若所用变量都以正确定义,一下选项中,非法的表达式是CA a!=4||b==1B ‘a’%3C ‘a’=1/2D ‘A’+322、下列语句序列执行后,j的值是A 5B 6C 7D 83、java语言的类间的继承关系是BA 多重的B 单重的C 线程的D 不能继承4、下列定义中,不正确的是 CA class x{…}B class x extends y {…}C static class x implements y1,y2{…}D public class x extends Applet{…}5、定义java Applet程序时,必须有的import语句是AA import java.applet.Applet;B import java.io.*C import java.awt.event;D import ng.*;6、下列方法定义中,不正确的是DA public int x( ){…}B public static int x(double y){…}C void x (double d){…}D public static x (double a){…}7、下列的哪个选项可以正确表达八进制8 CA 0x8B 0x10C 08D 0108、下列关于继承的哪项叙述是正确的CA 在java中允许多重继承B 在java中一个类只能实现一个接口C 在java中一个类不能同时继承一个类和实现一个接口D java的单一继承使代码更可靠字串19、若已定义byte[]x={11,22,33,-66};其中0<=k<=3,则对x数组元素错误的引用时 cA x[5-3]B x[k]C x[k+5]D x[0]10、给出下列代码,如何是成员变量m被方法fun()直接访问 -----成员变量在类中定义,局部变量在方法中定义 CClass test{Private int m;Public static void fun(){…}}A 将private int m 改为 protected int mB 将private int m 改为 public int mC 将private int m 改为 static int mD 将 private int m 改为 int m11、Given: F1 public class Alphal{2 public static void main(String[] args){3 boolean flag; int i=0;1 do{2 flag = false;3 system.out.println(i++);4 flag = 1 < 105 continue;6 }while((flag)?True;false);7 }8 }What is result?A 0000000000B 0123456789C Compilation failsD The code runs with no output.E The code enters an infinite loopF An exception is thrown at runtime e.12、Given() D1 package foo;23 import java.Util.Vector;45 protected class MyVector Vector{6 int i=1;7 public MyVector()8 i=2 ;9 }10 }1112 public class MyNewVector extends MyVector{13 public MyNewVector(){14 i=4;15 }16 public static void main(String args[]){17 MyVector v=new MyNewVector18 }19 }what is the result?()A. Compilation succeedsB. Compilation falis because of an error at line5C. Compilation falis because of an error at line6D. Compilation falis because of an error at line14E. Compilation falis because of an error at line1713、Given:()1 class Super{2 public integer getlength(){3 return new integer(4);}}45 public class Sub extends Super}6 public Long GetLength(){return new Long(5);}78 public static void main(String[] args){9 Super sooper = new Super();10 Sub sub = new Sub();11 System.out.println(12 sooper.getLength().toString()+","+13 sub.getLength().toString() );14 }15 }What is the output?A.4,4B.4,5C.5,4D.5,5pilation fails.14、Given:1 public class Test{2 public static String output=....;34 public static void foo (int){5 try{6 if(i==1){7 throw new Exception();8 }9 output+="2";10 }11 Catch(Exception e){12 OutPut+="1";13 Return;14 }15 Finally{16 Output+="3";17 }18 Output+="4"19 }2021 Public static void main(string args[]){22 Foo(0);23 Foo(1);2425 }26 }What is the value of the variable output at line 23?15、Given:() D1 class Base{2 Base(){System.out.print("Base");}3 }4 public class Alpha extends Base{5 public static void main(String []args){6 new Alpha();7 new Base();8 }9 }What is the result?A. BaseB. Basebasec. Compilation fails.D. The code runs with no output.E. An exception is thrown at runtime.16、Given:1 int l=1,j=-1;2 switch(i){3 case 0,1:j=1;4 case 2;j=2;5 default;j=0;6 }7 System.out.println("j="+j);What is the result?A.j=-1B.j=0C.j=1D.j=2pilation fails.---------------17、Which two are valid declarations within an interface definition?(Choose two)A. void methoda();B. public double methoda();C. public final double methoda();D. static void methoda(double dl);E. Protected void methoda(double dl);18、Which two allow the class Thing to be instantiated using new Thing()?(Choose two)A. public class thing{}B. public class thing{public thing(){}}C. public class thing{public thing(void){}}D. public class thing{public thing(String s){} }E. public class thing{public thing(){} public thing(String s){} }19、Given:1 public class X{2 public static void main(String[] args){3 try{4 badMethod()5 System.out.print(“A”);6 }7 catch (Exception ex){8 System.out.print(“B”);9 }10 Finally{11 System.out.print(“C”);12 }13 System.out.print(“D”);14 }15 public static void badMethod(){16 throw new RuntimeException();17 }18 }What is the result?A.ABB.BCC.ABCD.BCDpilation fails20、 Given:1 class TestA{2 TestB b;3 TestA() {4 b = new testB(this);5 }6 }7 class TestB {8 TestA a;9 TestB(TestA a){10 this.a = a;11 }12 }13 Class TestA11 {14 public static void main (String args[]){15 new TestA11().makeThings();16 //…code continues on17 }18 void makeThings(){19 TestA test = new TestA();20 }21 }Which two statements are true after line 15 before main completes?(Choose two)A.Line 15 causes a stack overflow.B.An exception is thrown at runtime.C.The object referenced by a is eligible for garbage collection.D.The object referenced by b is eligible for garbage collection.E.The object referenced by a is not eligible for garbage collection.F.The object referenced by b is not eligible for garbage collection.二、简答题(共6题,每题5分,共30分)1、java中作用域public,private,protected以及不写时的区别2、列出java中所有基本数据类型,并说明这些数据类型占用的字节数?同时说明基本数据类型和其他类型在使用上的区别?3、请详细阐述static在java中的应用?4、请阐述抽象类、继承、接口的概念及相互关系?5、Try{ }里有一个return语句,那么紧跟在这个try后的finally{ }里的code会不会被执行,什么时候被执行,在return前还是后?6、GC是什么?为什么要有GC。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
}
(我的实现:
public String[] split(String src,String asign){
String[] strArr=new String[100]; //这里定的数组长度有可能会不够,在循环里可以作相应处理(我没有做)
StringTokenizer st=new StringTokenizer(src,asign);
亚信科技笔试题
1. interface和abstract的区别?
abstract可不可以继承interface, interface可不可以继承interface?
2. HashMap和Hashtable的区别?
3.线程常用的方法是什末?
4. Gc是什末?常用的两种方法是什末?
5. Sleep()和wait()的区别?
int i=0;
for( prt('A');prt('B')&&(i<2);prt('C') ){
i++;
prt('D');
}
}
}
运行结果:
(答案:ABDCBDCB)
2、什么是MVC框架体系?
(要解释MVC模式的使用领域、出现的原因、有什么好处、解决了什么问题,M、V、C各表示什么,相应的技术有什么)
实现一个函数int isAnagramOfPalindrome(String S);
如果s的某种anagram是palindrome,则返回1,否则返回0。
2.给定一个数组A,其中包含N个整数,它们的取值范围为0..10000 (可以假定N>0)。请给出函数,实现如下功能
int mostOften(int[] A);返回数组A中出现次数最多的元素。
例如:给定N=6以及A[0]=20 A[1]=10 A[2]=30 A[3]=30 A[4]=40 A[5]=10
此函数应返回10或者30。数组A中可能包含数百兆字节的数据。
3.编写一个函数
int listLength(int[] A);
从给出的非空整数数组A(下标从0开始算)中,找到那个藏在其中的列表的长度,将长度值返回。列表是这样“藏”在数组中的:
"kayak" "codilitytilidoc" "neveroddoreven"
如果字符串A和字符串B含有相同的字母,但是顺序可能不一样,那么A被称为是B的anagram。例如,下面的字符串互为anagrams:
A="mary" B="army" A="rocketboys" B="octobersky" A="codility" B="codility"
int i=0;
while( st.hasMoreTokens() ){
strArr[i]=st.nextToken();
i++;
}
String[] retStr=new String[i];
for( int j=0;j<i;j++ ){
retStr[j]=strArr[j];
}
return retStr;
亚信的面试题:(大部分都不记得了,只记住几道题)
1、写出下面程序运行结果。
public class Test{
public static boolean prt(char c){
System.out.print(c);
return true;
}
public static void main(String[] args){
列表的开头位于数组的开头,也就是数组中下标为0的元素。
对于数组中下标为k的元素,A[k]包含了列表中下一个节点的下标,或者是-1 ——表示列表到此结束,没有下一个节点了。
你可以假定,列表的长度是有限的。
例如,给出这样一个数组
A[0]=1, A[1]=4, A[2]=-1, A[3]=3, A[4]=2
3、XML有几种解析方式?各是什么?
(要分别指出DOM和SAX的区别、分别使用什么模式、适用的领域)
4、JSP都有哪些内置对象和动作?作用各是什么?
5、自己写一个相当于String中split的方法,给一个字符串,按照指定分隔符进行分割,返回一个String数组。
public String[] split(String src,String asign){
你的函数应该返回4,因为从下标为0的元素开始,我们在下标为1和4的位置,依次找到了接下来的两个列表节点,并且在下标为2的位置找到了列表的最后一个节点。请注意,数组中下标为3的元素不属于这个列表。
4.今天笔试的另一道题目是这样的:实现函数m=k+A[k],其中k是数组A[]的下标,m还作为下标代入上式继续循环。最后将没有用到的数组元素输出。比如:A[0]=1,A[1]=2;A[2]=2;A[3]=4;在这里,A[2]被跳过,则A[2]的值将输出。还有一道实现这样的功能:任意给定一整数数组,求两个元素之差的最大值.max{|A[i]-A[j]||:0<=i,j<n}
14.存储过程其中就有第二题。另外两题跟第二题差不多,都用了数组,由于记不清题目,只能把别人记录的题目再拷贝过来。
1.问题:
果给定的字符串从左到右和从右到左的序列完全一致,那么这样的字符串被称为palindrome。例如,下面的字符串都是palindromes。
}
)
(范文素材和资料部分来自网络,供参考。可复制、编制,期待你的好评与关注)
6. Servlet中forward()和redirct()的区别?
7. EJB和JavaBean都是什末?
8. EJB都有哪些构成?
9. Servlet的生命周期,比CGI有什末优点?
10. Override和Overload的区别?
11. JSP的组成部分?
12.写一个JDBC的程序,
13. MVC架构的构成和各部分的作用?