May 2009 - May 2017 论坛八周年-你的足迹,我的骄傲


一亩三分地论坛

 找回密码
 获取更多干活,快来注册

一亩三分地官方iOS手机应用下载
查看: 1366|回复: 6
收起左侧

Yahoo onsite 新鲜出炉

[复制链接] |试试Instant~ |关注本帖
hj735 发表于 2015-2-21 13:04:39 | 显示全部楼层 |阅读模式

2015(1-3月) 码农类 硕士 全职@Yahoo - 内推 - Onsite |Other

注册一亩三分地论坛,查看更多干货!

您需要 登录 才可以下载或查看,没有帐号?获取更多干活,快来注册

x
13号面的。同行一起面的五个老中 两个阿三 两个老白

java immutable object 没答出来 其实就是一个状态不可变的对象 每次状态改变产生新的对象 例如string对象

一个lock实例传到多个myclass实例中去 如何让myclass实现trylock方法
没做出来 提示用mutex互斥量。 但是我记得用semaphore会引起block,那就不是trylock了而是lock了。. more info on 1point3acres.com
所以估计是搞个volatile的静态变量,每次lock之前检查变量值,如果有thread已经lock了那就return false,如果没有就lock 然后修改值 return true。
一下是网上找的一个实现,有些出入,大概意思差不多吧。这题没答上来完全是对题目意思没有领会,这里表现不太好。


  • import java.util.concurrent.atomic.AtomicBoolean;  
  •   
  • /**
  • * @author asme2u
  • */  
  • public class Lock {  
  •   
  •     private AtomicBoolean lock = new AtomicBoolean(true);  
  •   
  •     public boolean tryLock() {  
  •         return lock.compareAndSet(true, false);  
  •     }  
  •   
  •     public void unlock() {  
  •         lock.set(true);  
  •     }  
  •   
  • }  



leetcode two sum
square root
字符数组 替换比如把 ‘A’ 换成 ‘CC’
. From 1point 3acres bbs
给你一个字典 然后让你找一个巨大字符串里面包含的所有存在于字典中的word。这些词有个特点,有的是其他的前缀或者后缀。
所以先预处理,建个map,key是每个word,value是个word list,就是这个word包含的所有的前缀后缀集合。. 鍥磋鎴戜滑@1point 3 acres
匹配的时候就匹配最长的word开始,一旦匹配上了那么list里的所有都匹配,减少匹配时间。匹配用KMP算法。随便扯了扯。

给你一个8位的电话号码,让你track这个号码是否被用过了,设计数据结构和算法。用了bit map 实现的总共一百兆内存就可以. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴

然后一些看代码说输出的题目。具体如下:
下面是java代码

        public static void main(final String[] args) {
                Super obj = new Sub();
                obj.bar();
        }. 鐣欏鐢宠璁哄潧-涓浜╀笁鍒嗗湴
. 1point3acres.com/bbs
        public static class Super {
                public void foo() {
                        System.out.println("this is super.");. more info on 1point3acres.com
                }

                public void bar() {
                        foo();
                }

        }

        public static class Sub extends Super {
                public void foo() {
                        System.out.println("this is sub.");
                }
        }

这里和C++搞混了,我说如果加virtual那么输出sub,不加输出super,晕。 其实java中没有virtual关键字,都是自动runtime binding的,所以只要子类重写方法那么肯定调用子类的方法。

C++代码:

 楼主| hj735 发表于 2015-2-21 13:04:40 | 显示全部楼层
关注一亩三分地公众号:
Warald_一亩三分地
class Base{

public:
        Base(){
-google 1point3acres        }

        virtual void foo(){
                cout << "this is base" << endl;
        }. From 1point 3acres bbs
};. 鐗涗汉浜戦泦,涓浜╀笁鍒嗗湴

class Child :public Base{
public:
        Child(){
                foo();
        } 鏉ユ簮涓浜.涓夊垎鍦拌鍧.

        ~Child(){
                foo();
        }

        void foo(){
                cout << "this is child" << endl;
        }
};. 1point 3acres 璁哄潧

int _tmain(int argc, _TCHAR* argv[]). 涓浜-涓夊垎-鍦帮紝鐙鍙戝竷
{
        Child* p = new Child();
        delete p;
}

这道题的输出应该是 两个child,基类中foo是个虚函数,无论什么情况都调用子类的方法,构造函数和析构函数中可以调用其他函数。 不幸的是这道题又答错了,我说如果构造函数和析构函数调用时实例还不存在的话会可能会调用基类的方法,其实父类里的成员和子类成员是一起被实例化和删除的,所以构造函数和析构函数一定是调用子类方法。
回复 支持 反对

使用道具 举报

flyPacific111 发表于 2015-2-24 08:20:17 | 显示全部楼层
关注一亩三分地微博:
Warald
赞面经!LZ出结果了吗?面的哪个组啊?
回复 支持 反对

使用道具 举报

ccgogo123 发表于 2015-2-24 08:42:49 | 显示全部楼层
我差不多能够猜出面楼主的是哪个人了。。。。我的电面题目跟你很像。。。。。
回复 支持 反对

使用道具 举报

 楼主| hj735 发表于 2015-2-24 09:19:54 | 显示全部楼层
flyPacific111 发表于 2015-2-24 08:20
赞面经!LZ出结果了吗?面的哪个组啊?

search组,面完10天还没结果
回复 支持 反对

使用道具 举报

flyPacific111 发表于 2015-2-24 10:45:57 | 显示全部楼层
hj735 发表于 2015-2-24 09:19
search组,面完10天还没结果

祝好运哈!
回复 支持 反对

使用道具 举报

本版积分规则

关闭

一亩三分地推荐上一条 /5 下一条

手机版|小黑屋|一亩三分地论坛声明 ( 沪ICP备11015994号 )

custom counter

GMT+8, 2017-5-23 05:47

Powered by Discuz! X3

© 2001-2013 Comsenz Inc. Design By HUXTeam

快速回复 返回顶部 返回列表