阿里2015在线研发project师笔试题(部分)
今天lz去阿里的在线笔试打了一把酱油,因为lz的水平有限,时间太他么紧张了。以下把记下来的题给大家分享一下。选择题总共20道,前十题截了图,后面感觉太费时就没有再截了,凭记忆记下了两道。附加题都记录下来了。
选择题
第1题:
第2题:
第3题:
第4题
第5题:
第6题:
第7题:
第8题:
第9题:
第10题:
回顾起来的题(11-20中的某2道)
1. 一个博物馆,以每分钟20人的速度进入,平均每人待20分钟,问博物馆最少须要容纳多少人?
A.100 B.200 C.300 D.400 E.500(可能另一个以上都不是的答案,记不清楚了)
2. 有一个二叉树,(详细题目记不清楚了,主要是说有先序和中序,求后序)
问答题
第一题
给定一个query和一个text,均由小写字母组成。要求在text中找出以相同的顺序连续出如今query中的最长连续字母序列的长度。比如, query为“acbac”,text为“acaccbabb”,那么text中的“cba”为最长的连续出如今query中的字母序列,因此,返回结果应该为其长度3。请注意程序效率。(答案仅仅是考试时候的答案)
package com.wj;
public class aLiTest {
public static void main(String[] args) {
String query ="acbac";
String text ="acaccbabb";
//调用findCLS方法计算text中最长的连续出如今query中的字母序列及其长度
findLCS(query.toCharArray(), text.toCharArray());
}
public static void findLCS(char[] query, char[] text) {
String result =""; //接收结果字符串
int m =query.length;
int n = text.length;
int[][] c = new int[m][n];
int max = 0;
int maxPosX = 0;
for (int i = 0; i< m; i++) {
for (int j = 0;j < n; j++) {
if (query[i] == text[j]) {
if ((i== 0) || (j == 0)) {
c[i][j] = 1;
} else {
c[i][j] = c[i - 1][j - 1] + 1;
}
if(c[i][j] > max) {
max= c[i][j];
maxPosX = i;
}
} else {
c[i][j]= 0;
}
}
}
for (int i = maxPosX- max + 1; i <= maxPosX; i++) {
result +=query[i];
}
System.out.println("最长序列为:" + result); //输出序列
System.out.println("最长的序列长度为:" + max); //输出序列的长度
}
}
第二题
写一个函数,输入一个二叉树,树中每一个节点存放了一个整数值,函数返回这棵二叉树中相差最大的两个节点间的差值绝对值。请注意程序效率。(答案仅仅是考试时候的答案)
int absMax(BinaryTree root){
Queue<BinaryTree> btree = new Queue<BinaryTree>();
BinaryTree p = new BinaryTree();
BinaryTree q = new BinaryTree();
btree.add(root);//元素入队
int max = btree.peek().getdata();//max和min初始化
int min = btree.peek().getdata();
while(!btree.isempty()){
p = btree.poll();//元素出队
if(!p.isLChild()) //isLChild()推断左孩子是否存在,假设存在就入队列
btree.add(p.getLChild());
if(!p.isRChild())
btree.add(p.getRChild());
if(btree.isempty()){ //假设队列中不存在元素,就直接与max和min比較,然后返回
int temp = p.getdata();//取得节点的值
if(max<temp)
max = temp;
elseif(min > temp)
min = temp;
return abs(max-min);
}
q = btree.poll(); //队列中还存在值就出队,把孩子节点放入队列
if(!q.isLChild()) //isLChild()推断左孩子是否存在,假设存在就入队列
btree.add(q.getLChild());
if(!p.isRChild())
btree.add(q.getRChild());
if(q.getdata() >= p.getdata() ){ //先q节点的值与p节点的值比較,大值和max在比較,小的和min比較,以降低比較次数
if( max < q.getdata())
max = q.getdata();
//考试过程中因为紧张思考不严密遗漏的两行代码
if(min > p.getdata())
min = p.getdata();
}
else{
if(min > q.getdata())
min = q.getdata();
//考试过程中因为紧张思考不严密遗漏的两行代码
if( max < p.getdata())
max = p.getdata();
} } } return abs(max-min);//返回max和min之差的绝对值 }
第三题
java中的wait()方法和sleep()方法的差别是什么?
阿里2015在线研发project师笔试题(部分)的更多相关文章
- 2015-8-29阿里校园招聘研发project师笔试题
前言:原题来自于网络:http://www.cnblogs.com/nausicaa/p/3946694.html.本人依据自己理解对题目进行解答.因为水平有限.题目有不会做.做错的地方.欢迎大家留言 ...
- 百度2016研发project师笔试题(四)
百度2016研发project师笔试题(四) 2015/12/8 10:42(网上收集整理的,參考答案在后面.若有错误请大神指出) 1. 关于MapReduce的描写叙述错误的是() A. 一个Tas ...
- 网易2016研发project师笔试题
网易2016研发project师笔试题 2015/12/9 11:25(网上收集整理的,參考答案在后面,若有错误请大神指出) 1. 运行指令find / -name "test.c" ...
- 阿里巴巴2016研发project师笔试题
问题1: 假设下列的公式成立:78+78=123,则採用的是_______进制表示的. 本题实则考察进制转换.能够设为x进制.可是x进制有一个问题.即我们无法对x进制直接进行加减乘除.故转化为我们常见 ...
- 网易游戏2015年暑期实习生面试经历-游戏研发project师
首先,我还是先介绍一下网易游戏吧.引用别人的一段话 作者:王选易.出处: http://www.cnblogs.com/neverdie/ 欢迎转载 .也请保留这段声明.假设你喜欢这篇文章,请点[推荐 ...
- 阿里巴巴2014研发project师实习生面试经历
java研发project师的初面是在上周三进行的,终于结果到了晚上才出,而没有通过的则是一结束网上就更新了状态.之后阿里通知这周三,也就是今天进行二面. 凑巧的是今早被舍友吵醒,中午那个困啊,但没时 ...
- 2014阿里巴巴研发project师暑期实习生面试经验
2014阿里巴巴研发project师暑期实习生面试经验 作者:林子 Blog: http://blog.csdn.net/u013011841 时间:2014年8月 出处:http://blog.c ...
- 当当网-前端project师測试题
前端project师測试题(笔试时间20分钟.面试时间20分钟) 一.笔试 1.基础问题 (1)前端页面有哪三层构成,各自是什么? ...
- 最美应用-从Android研发project师的角度之[最美时光]
最美应用-从Android研发project师的角度之最美时光 @author ASCE1885的 Github 简书 微博 CSDN 近期发现最美应用这样一个站点.它会定期推介一些非常有意思的app ...
随机推荐
- 浅析ArrayList,LinkedList的执行效率
以前见过很多文章说这两个东西,感觉自己还是没有深入理解,今天看了书明白一些,在此提出来和大家共同探讨: 面试的时候(基础)一般会问你使用过LinkedList或者ArrayList没有,简单的回答有或 ...
- gcc的bug? c++模板类中友元函数的訪问权限问题
原文地址:http://stackoverflow.com/q/23171337/3309790 在c++中,模板类中能够直接定义一个友元函数.该函数拥有訪问该模板类非public成员的权限. 比方: ...
- veridata实验举例(6)验证agent启动先后顺序是否对捕获update操作有影响
veridata实验举例(6)验证agent启动先后顺序是否对捕获update操作有影响 续接veridata实验系列 上篇:"veridata实验举例(5)改动主键上的列值.update ...
- PHP:小数位计算
本文提供了两种方法,分数的方法成为字符串.然后,"."为了拦截.跟.子长后.另一个是关于小数*10的N钍.实例10的8再次钍8取余次.然后继续10余.取决于10结果的余数是不0. ...
- java中由类名和方法名字符串实现其调用【反射机制】
js里通过eval()函数,在知道某个方法名是可以实现调用该方法,那么在java里边又怎么实现的呢? java里边是通过反射机制来实现,代码如下: import java.lang.reflect.M ...
- Android Bitmap 载入与像素操作
Android Bitmap 载入与像素操作 一:载入与像素读写 在Android SDK中,图像的像素读写能够通过getPixel与setPixel两个Bitmap的API实现. Bitmap AP ...
- hdu1513 (滚动数据压缩空间)
给定一个字符串,问最少添加多少个字符可以使得这个字符串变成回文串 if(str[i]==str[j]) dp[i][j] = dp[i+1][j-1] else dp[i][j] = min(dp[i ...
- CC2530 外部中断 提醒
#include "ioCC2530.h" #define uchar unsigned char #define led1 P1_0 #define led2 P1_ ...
- HDU1176_免费馅饼【号码塔】
免费馅饼 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submi ...
- android EditText的美化
今天要做一个页面,有EditText,于是就搞起了它的美化. EditText的美化,我的第一反应是,在EditText的左边设置显示一张图片,这样会比較好看. 设置左边显示图片的属性为:androi ...