小米 2015 北京 研发面试

本系列文章是根据女朋友今年找工作的经历整理而成,虽然过程比较艰辛,但是女朋友也算很早就拿到offer的一批人,在这过程中在CSDN中受益匪浅,同样,也希望我们的经验和教训也可以给别人带来一些帮助。

总共三道大题算分,都是写代码的题呀。还有四道附加题不算分,可根据自己感兴趣的方向作答。所有研发不论岗位都是一样的题。可选自己熟悉的语言作答。

1.回文大家都知道吧例如“上海自来水来自海上”这种的句子就是回文,现在将一个数当作一个字符串,判断一个数字是否是回文数(20分)。例如:

12321 → true;

3    →true;

13342 → false。

c++:suibiangeigemingziba(longnum)

java: suibiangeigemingziba(long num)

卷子上给的函数名字实在是记不清啦,太长一串啦。尼玛,不是说好的随便选用什么语言作答吗?你这又给出c++和Java的是什么意思,这个选择是二选一吗?我就是投个前端至于这么为难我吗?不管啦,c++和Java的都不知道怎么写,就用js写啦,反正我就是个打酱油的。

 

2.多项式乘积(30分)

多项式长什么样大家应该都知道吧,那我就不多说啦,要是你不知道那就去百度吧。

这个题目是要计算两个多项式的乘积然后输出答案。

输入的格式是“(-3,5),(87,4),(93,3),(3,0)”这个表示的多项式是:-3*x^5+87*x^4+93*x^3+3。

输入字符串就只有括号,逗号加数字,这个输入的顺序要按照幂次从高到低排列。

计算出的乘积答案要按照输入的格式标准的输出。

卷子上的函数名字实在是长呀,记不住呀,我就不说函数名啦,反正函数的两个参数是(String pa,String pb)

好了去吧,皮卡丘,小伙伴们去做吧。

 

3.排队问题(50分)

这题题目老长啦,因为考试的时候坐第一排实在是不好拿手机拍,只能偷偷在草稿纸上抄了一点,再偷偷把草稿纸偷渡回来,所以题目说的没有那么详细,你们也不要怪我呀,我真的已经尽力啦。

题目大概是这样的话说小米呢有很多员工,每个人都有自己的邮箱,邮箱名就是自己名字的全拼例如张强邮箱就是[email protected],但是呢中国人这么多,像这么普通的名字肯定会有重名的,于是第二个入职的张强邮箱就是[email protected],一次类推下一个就是[email protected]。现在的问题是公司要组织活动,你要负责排队。

class RequestItem {

         publicString member;

         publicboolean standFront;//true表示要排在这个人前面,false表示要排在这人后面

}

class Request {

         publicString ower;//提要求的人

         ListrequestItems;//要排在那些人前面那些人后面

}

ListgetValidOrder(List allMembers, List requests);

allMembers表示所有员工的邮箱前缀,request是排队要求,每个人最多10个排队要求,可以没有要求,好了你要做的就是完成getValidOrder函数,返回一个合法的排队序列,要是米有就返回null。

 

前三题终于弄完啦,现在来看看附加题吧。

1.web前端

用html+css完成以下样式,用面向对象的js完成其中的效果,当然要是只使用css不用js就更好啦。

小米 2015 北京 研发面试_第1张图片

2.Android客户端
简述Android如何处理UI与耗时操作的通信,有哪些方式以及各自的优缺点

3.服务器端

制定防范“黄牛”的策略或模型,在用户抢购时能正确识别用户和黄牛,设计系统的主要模块和功能及必要说明。

4.测试

已知String convert(String page)作用是将web页转码为方便移动设备查看的页面,为了确保转码的正确性,写出相应的测试策略。

你可能感兴趣的:(2015求职,小米,北京)