总结下2016年的笔试题

1.网易2014校园招聘杭州Java笔试题

class MyThread2 implements Runnable {
       public static void main ( String [ ] args ) throws InterruptedException {
             Thread t = new Thread ( new MyThread2 ( ) ) ;
             t . start ( ) ;
             System . out . print ( "m1" ) ;
             t . join ( ) ;
             System . out . print ( "m2" ) ;
       }
       public void run ( ) {
             System . out . print ( "r1" ) ;
             System . out . print ( "r2" ) ;
       }
}
求输出。



2.大众点评2016研发工程师笔试真题


给定一个整数sum,从有N个有序元素的数组中寻找元素a,b,使得a+b的结果最接近sum,最快的平均时间复杂度是( )

a. O(n)
b. O(nlogn)
c. O(n^2)
d. O(logn)

选a     O(n)时间,2个指针从数组的开始位置和结束位置移动,和大于sum,left++,和小于sum,right–。更新最小的差值,和2个指针的值,移动时更新。差值为0,则结束


3.滴滴 2016 笔试题 (选择题) 博弈论问题

有3堆火柴,分别有4,5,7根,两个人依次取火柴,每次只能取同一堆的火柴,最少拿一根,最多拿着堆内所有火柴,取走最后一根火柴,让对方无火柴可以取者为胜。请问现在谁会获胜?()


A 后手
B 先手
C 不确定


4.华为面试题(8分钟写出代码)


题目:有两个数组a,b,大小都为n,数组元素的值任意,无序;
要求:通过交换a,b中的元素,使数组a元素的和与数组b元素的和之间的差最小。


我的方法有:


在a和b中寻找使得x在(0,A)之间并且最接近A/2的i和j,交换相应的i和j元素,重新计算A后,重复前面的步骤直至找不到(0,A)之间的x为止。
背包算法:在2n个数中,找出最接近sum/2的值的n个数,但当n很大时,效率很低
大家有没有什么更好的算法


5.阿里2015实习生招聘题


假定x=500,则下面函数的返回值为()


int fun(int x)
{
    int countx = 0;
 
    while (x)
    {
        countx++;
        x = x & (x – 1);
    }
 
    return countx;

   2
   3
   5
   6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值