?
職位類型:技術類
筆試時間:2014年8月
招聘公司:小米
樓主參加了小米校招的宣講會,被圈粉了,感覺小米公司的前景不錯,工作人員也很親切。但是悲催的是,筆試就被鄙視了。。。
小米校招技術類筆試題目分享
下面是記得的一些筆試題,回憶版及供參考~
1.黑盒測試包括什么?(有好幾個選項忘了)
2.正則表達式 x|(yx+) 選出不匹配的
A,x B,xyxx C,yx D,yxxx
3.將 abcde 入棧,不可能的出棧順序
A.abcde
B.decba
C.decab
D.edcba
4.Struct S
{
int * p;
int * p2;
};
void main()
{
struct S mys;
int *p=&mys.p;
p[0]=1;
p[1]=2;
}
問程序的運行結果(有好幾個選項,忘了,其中一個是程序已經崩潰)
5.5*4 的矩形,這里有幾個長方形?(填空題)
6.(這一題很巧妙) x=5678 求函數返回數值(填空)
int foo(x)
{
int count=0;
while(x)
{
count++;
x=x&(x-1);
}
return count;
}
7.舉辦m個隊(m>=3)單循環比賽,贏得3分,平2分,負0分,(前3名)有2個小組提前出線,(分數一樣就抽簽決定),那出線至少是幾分?(填空題)
8.考察 C++的繼承
# include “stdafx.h”
# include
using namespace std;
class A
{
public :
void virtual run()
{
cout<<”a”<
}
void disp()
{
cout<<”aa”<
}
};
class B :public A
{
public :
void run()
{
A::run();
cout<<”b”<
}
void disp()
{
cout<<”bb”<
}
};
void main(void)
{
B b;
b.run();
b.disp();
A * a=new B();
a->run();
a->disp();
}
結果:(填空題)
9.晚上過橋問題 有 5 個人,過橋時間分別是 1,3,6,8,12(S),橋每次最多 2 個人,燈只有 30S,怎么走?(填空題)
10.數字規律變化題(忘了, sorry)
11.編程題
有一個數組(非遞減),旋轉了不知道多少個位,在該數組中找一個數的下標。寫出代碼(用 C/c? 或者 java)并分析時間空間復雜度,考慮效率(很重要)。(本人認為可以采用改進的折中查找法)
eg:數組 [6,7,1,2,3,4,4] 找 3,返回 4;
函數原型
C/C++:
int find(int * a,int n,int count) count 為 a 數組長度;n 為要查找的數
Java:
int find(int []a,int n)
總體上感覺小米的筆試還是比較有難度的,要有扎實的基礎、熟練的算法、清晰的思維才能通過啊,要不然就要像我一樣心碎啦。