1,黑盒测试包括什么?
(有好几个选项忘了)等价类划分、边界值分析、因果图分析、错误推测法、功能图分析
2,正则表达式 x|(yx+) 选出不匹配的 B
A,x B,xyxx C,yx D,yxxx
3,将abcde入栈,不可能的出栈顺序 c
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 <iostream>
using namespace std;
class A
{
public :
void virtual run()
{
cout<<”A”<<endl;
}
void disp()
{
cout<<”AA”<<endl;
}
};
class B :public A
{
public :
void run()
{
A::run();
cout<<”B”<<endl;
}
void disp()
{
cout<<”BB”<<endl;
}
};
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)
另外一题:一个数字序列,87 57 36 19 10 。按规律写出下个数字。我当时写的是九。
外一题:足球比赛,每组有N个队,N》=3.胜一场3分,平一场1分,输一场0分,每组取前两名,要想出小组,最少得多少分。
一个5*4的矩阵,有多少个长方形?
即:5的排列 乘以 4的排列
(5+4+3+2+1)×(4+3+2+1)=15×10=150个矩形
87 57 36 19 10 。按规律写出下个数字,下一个是1
后一个=前一个十位数字×个位数字+1
8×7+1=57
5×7+1=36
3×6+1=19
1×9+1=10
1×0+1=1
N-1
其中第二名,全平,N-1可出线;
第一名与第二名平一次,其余全胜,得分1+(N-2)×3;
剩下N-2队输了一局,其余全平,可得N-2
所以要想出线,最少可以是N-1分,低于N-1分就不可能出线了。
。题目内容囊括了:堆栈、数据结构、逻辑思维、C语言、Java基础题,而且程序题也很人性化,可以用C语言和Java书写。题目也很有意思,最后有一题居然是说小米公司造飞机,内容我就不多透露了,反正就是很简单。
1.小米一家晚上回家要过一座桥,只有一根蜡烛且这根蜡烛只能燃烧30秒,
雷军过桥需要1秒,小米手机过桥需要3秒,小米MIUI过桥需要6秒,小米论坛过桥需要8秒,米聊过桥需要12秒。
一次最多只能同时两人过桥,
请问怎么样小米一家才能安全过桥?
2.小米公司举行足球比赛,一个小组有三个队伍,单循环出线制,胜一场得2分 平得1分 输得0分 分一样的情况下双方抽签决定出线权,请问最低的出线分是多少?
3.{5.4}的矩阵里有多少个长方形?
还有在这里提醒想参加小米宣讲会的同学,一点提前看看数据结构~~~ 好多题~~~~~
小米的笔试并不完全考编程基本功,还出了一些智力题,比如说翻硬币和求abcdef值的题目,像是奥数题。编程题部分,考察了c++的内存机制,继承,正则表达式。我依旧卡在了正则表达式。另外还考察了网络知识,子网掩码。值得注意的是这次的笔试没有考察数据库相关知识