考试时间:1小时(后来阿里巴巴临时延长20分钟.所以实际考试时间是1小时20分钟)
2008年9月15日新鲜出炉.
1.甲乙丙丁是同班同学,以下只有一句是假话:
甲:这次考试全班都通过了.
乙:丁没有及格.
丙:我们班有几个没通过
丁:乙也没有及格.
谁的是假话?
答案:甲
2.也是类似的逻辑推理题,很简单,所以忘了.
3.餐桌上有几个人,1个是哈尔滨人,2个是北方人,1个是广东人,2个人只做电脑生意,3个人只做服装生意,而且上述描述涉及餐桌上的所有人.问至少有几个人,至多有几个人?
答案 5,8
4.抽象类和接口的区别
5.用户级线程和核心级线程的区别是什么?
6.用最快的算法写出计算2*17的方法.
答案: 17<<2 (移位操作.)
7.有n个人围成一圈,从第一个人开始报数,报到m的时候把这个人剔出,从下一个继续报数,报到下一个m的时候剔出该人,如此循环,直到所有人都被剔出.用java写一个程序,输出剔出的人的序号.这n个人的序号是1,2,3,…n..
这是我写的,测试通过,仅供参考.
import java.util.Scanner;
public class NandM {
public static void main(String args[]){
Scanner s=new Scanner(System.in);
int n=s.nextInt();
int m=s.nextInt();
int i=0,j=0,k=0,result=0;
int a[]=new int[n];
for(i=0;i<n;i++)
a[i]=0;
i=0;
while(true){
if(a[i]==0)
j++;
if(j==m){
System.out.println(i+1);
a[i]=1;
j=0;
result=0;
for(k=0;k<n;k++)
result+=a[k];
if(result==n)
break;
}
if(i==n-1)
i=0;
else
i++;
}
}
}
8.final,finalize,finally的区别?
9.try..catch..finally结构,如果try{…}catch中有return语句,那么finally块中的语句会执行么?是在return之前还是之后执行?
答案:会,之前.
10.
Integer a=new Integer(10);
Long b=new Long(10);
Double c=new Double(10.0);
以下哪些结果是true?为什么?
a==b
a==c;
a==10;
a.equals(10)
a.equals(b)
c.equals(c)
d.equals(10.0)
11.简述template 和 Strategy设计模式的区别.
12.有学生表S,课程表C,学生选课表SC.
(1).写出建表语句.
(2).写出sql语句:查询选了所有课程的学生.
(3).写出sql语句:查询选课10门的学生.
13.一道有关javascript的编程题.忘了.
14.说说你对测试驱动开发(TDD)的理解.
15.用3个关键词表现你想从阿里巴巴得到什么?
本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/archive/2010/12/19/1910313.html,如需转载请自行联系原作者