各个实习公司面试题目

1:yahoo全球研发中心面试题目:

An个信封对应n个邮箱,问至少有一个放对的概率是多少?(数学概率题)

B:一个list,里面的每一个元素都是 u=2x3y5z,其中xyz的取值都是从0到正无穷设计一个算法,找到第500个数据。这list里面的数值是按照从小到大排列好的。

答案:把满足x+y+z<=500的所有数据排序后找第五百个。

 

C:如果对于一个占用内存非常大的程序,如何分配JVM

DJava中如何调用c/C++的库?

E:对于一个房间,地板看成很多条平行的线,间距s,问一个长L的笔随机扔下,和地板线相交的概率多少?

说明: C:\Users\zhaoxin\Desktop\无标题.png

思路:假设落下的笔的中心距离较近的线的距离是x,并且笔与水平之间成的角度是A,那么要相交,(L/2)×cosA>=x

那么,根据这个关系画出图来,看看占的面积是多少,占总的面积是多少,那么就可以算出概率来了。

说明: C:\Users\zhaoxin\Desktop\无标题.png

 

 

 

F:对于一个m×n的方格矩阵,从左上角走到右下角,只能向右或者向下走,一共多少走法?

 

说明: C:\Users\zhaoxin\Desktop\无标题.png

自己当时的解答:只是考虑向下走或者向右走在那些方格里就可以。

 

 

2:搜狐研发中心

1数据结构类题目:

A:按层次遍历打印二叉树

B:对单链表逆序排列(迭代和递归的方法)

2多线程的优缺点

3 算法类

A:从数据库里面要读取多个键值对,如何设计一个缓存系统,使速度更快(说明算法思路和主要解决的问题)

B:很多个(<1M)小文件,设计一个系统,加快存储和读写。

4 用不多于微薄要求字数的字来描述对于实习的最大期望

5 研究过开源项目?

 

3IBM

1:一行c语言语句实现对于浮点数的四舍五入

2:写一个排序算法的伪代码

3:写一个shell脚本,对于一个文件a每隔100秒往文件b中写一次。

 

4:Oracle

对于字符串的考察。

public class StringSwitch {

private static void switchString(String str1, String str2) {

// TODO Auto-generated method stub

String temp = null;

temp = str1;

str1 = str2;

str2 = temp;

System.out.println(str1 + str2);

}

public static void main(String[] args) {

switchString("A", "B");

}

}

这个方法里面其实是对于引用的值操作,指向了不同的地址,调用这个方法的时候,在栈里面,创建了新的string类型对象的引用,然后做的操作。string的值不可变,但是引用可以指向不同的类型。

原文地址:https://www.cnblogs.com/allenzhaox/p/3201795.html