Google 电面面经

原帖地址:一亩三分地

1月5号的google电面,实在是太囧,12月约的··时间太久给忘了是在5号···一直以为是6号。对面打电话过来之后才发现是今天···跟面试官讨价还价半天约到了3小时之后再打一个电话
主要问了两个题吧
一个不知道算什么类型的题,一个算法
第一题:问有一个marble,含有名字name和颜色color两个属性。问你用什么数据结构,可以任意的拿和放入其中,使的每次拿的时候取到任意一个marble的概率都是一样。
follow up 如果你有1M种颜色,平均每个颜色有1M个marble,但是你的内存没有1M*1M这么大,这时这个数据结构用什?

第二题 算法 给你一个arr 返回 T 或者 F
arr的每个数代表从这个点开始跳几部,返回T的情况:从这个arr中任意一个数开始跳,可以在每个元素都跳到且只跳到一次的情况下返回到开始跳的元素
比如[1,1,1,1,1,1] => T
[0,1,1,1,1,1]=> F
[7, 5, 2, 3] => F
[2,2,3,1] => T