synet阿里巴巴2014校园招聘笔试试题算法工程师_第1页
synet阿里巴巴2014校园招聘笔试试题算法工程师_第2页
synet阿里巴巴2014校园招聘笔试试题算法工程师_第3页
synet阿里巴巴2014校园招聘笔试试题算法工程师_第4页
synet阿里巴巴2014校园招聘笔试试题算法工程师_第5页
已阅读5页,还剩12页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

A、 C、 D、若进程在内存中占3页(开始时内存为空),若采用先进先出(LRU)页面1,0,2会发生多少缺页?A、 C、 D、A、 C、 intfun(char{char*p=s;}A、C、void{inti=65536;cout<<i<<”,”;i=65535;cout<<} 置为最小A、 B、 C、 A、 C、 A、 B、 C、 A、 C、 A、 B、 C、 D、O(nlog快速排序在已经有序的情况下效率最差,复杂度为A、O(nlog B、 C、 D、O(n2log C、甲必 现有一完全的P2P共享协议,每次两个节点通讯后都能获取对方已经获取A、 C、 D、a[l],b[m]和c[n]。请在三个数组中各找一个元素,Distance=max(|a[I]–b[j]|,|a[I]–c[k]|,|b[j]–c[k的数。比如K=1,2,3时,分别应返回3,5,7。要求算法时间复杂度最优。N/2*3(3N)/2#include<stdio.h>#defineN7int{intarr[N]={4,1,5,9,9,7,intiter= intcnt=for(iter=0;iter<=N/2+1iter+={if(++cnt&&arr[iter]>arr[iter+1]{inttemp=arr[iter];arr[iter]=arr[iter+1];arr[iter+1]=temp;}}intmyMin=for(iter=2;iter<Niter+={if(++cnt&&arr[iter]<{myMin=}}intmyMax=for(iter=3;iter<N;iter+={if(++cnt&&arr[iter]>{myMax=}}if(N%2!=0&&++cnt&&myMax<arr[N-1])myMax=arr[N-1];printf("minis%d\n",myMin);printf("maxis%d\n",myMax);printf("comparetimesis%d",cnt);return0;}y2)|/2 x2=b[j],x3=c[k],则Distance=max(|x1–x2|,|x1–x3|,|x2–x3|)= x2|,|x1x3|)|x2 根据公式max(|x1x2|,|x1x3|)1/2|2x1x2–x3|+|x2x3|),带Distance=max(1/2(|2x1–x2–x3|+|x2–x3|),|x2–x3|=1/2*max(|2x1x2–x3|,|x2x3|1/2*|x2x3|把相同部分1/2*|x2–x3|分离出来=1/2*max(|2x1–(x2+x3)|,|x2–x3|)+– //把(x2x3)看成一个整体,使用公式=1/2*1/2*((|2x1–2x2|+|2x1–2x3|)+1/2*|x2–=1/2*|x1–x2|+1/2*|x1–x3|+1/2*|x2–=1/2*(|x1x2||x1x3||x2x3|)//求出来了等价公式,第二个关键点:如何找到(|x1x2||x1x3||x2x3|)的最束为止,最慢(l+m+n)次,复杂度为O(l+m+n)代码如下:#include<stdio.h>#include<stdlib.h>#include<math.h>#definel3#definem#definenintMymin(inta,intb,int{intMin=a<b?a:b;Min=Min<c?Min:c;returnMin;}intSolvingviolence(inta[],intb[],int{inti=0,j=0,k= intMinSum=(abs(a[i]-b[j])+-c[k])+abs(b[j]-c[k]))/ intstore[3]={0};intSum=0;for(i=0;i<l;{for(j=0;j<m;{for(k=0;k<n;{Sum=(abs(a[i]-b[j])+abs(a[i]-c[k])+abs(b[j]-]))/if(MinSum>{MinSum=Sum;//store[0]=i;//store[1]=j;//store[2]=k;}}}} printf("theminis%d\n", printf("thethreenumberis%-3d%-3d%-3d\n",a[store[0]],b[store[1]],c[store[2]]);return}intMinDistance(inta[],intb[],int{intMinSum0intSum0;//计算三个绝对值的和,与最小值做比较intMinOFabc=0;//a[i],b[j],c[k]的最小值intcnt0;//lmninti0,j0,k0;//a,b,cMinSum=(abs(a[i]-b[j])+abs(a[i]-c[k])+abs(b[j]-c[k]))for(cnt=0;cnt<=l+m+n;{Sum=(abs(a[i]-b[j])+abs(a[i]-c[k])+abs(b[j]-c[k]))/;MinSum=MinSum<Sum?MinSum:MinOFabcMymin(a[i]b[j]c[k]);//a[i]b[j]c[k]值if(MinOFabc==a[i]){if(++i>=l)}if(MinOFabc=={if(++j>=m)}//b[j]最小,移动jif(MinOFabcc[k]){if(++k>=n)}returnMinSum;}int{inta[l]={5,6,intb[m]={13,14,15,intc[n]={19,22,24,29,32,printf("

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论