华为2014暑期实习生招聘机试考题回忆

昨天(3月21日),去华为南研所参加了机试。之前短信通知的时间是12点15报道。我于11点吃过午饭之后坐车从学校出发。到了之后发现许多人已经到了。主办方先让在一个大厅里休息,顺便看了华为内部的宣传片,是将几个电影的镜头拼接,加工的,意在宣传华为,还是挺搞笑的。桌上还有面包饼干等零食,主办方还是挺贴心的。

之前华为开放过OJ,题型公布过,3道题,分值60、100、160,两个小时,用c/c++或者JAVA完成,每道题5次提交机会,得到60分就可以获得综合测评的资格。题目总体上不难,基本上不会涉及太复杂的数据结构和算法。基础尚可一般就可以通过,非常适合我这种半吊子水平的非科班出身的程序员。

之前还以为只能在网页上编写代码,没有调试环境,所以还是提心吊胆的,害怕犯些低级失误。进去之后才发现,桌面上就有IDE,不由得松了一口气。第一道题,大意是输入一个字符串,如果第一个字符是大写并且其他字符不是大写,那么输出true,否则输出false。前一晚才刚刚看过字符串数组和指针的知识,还算有点印象。但是拿到题之后还是莫名紧张了一下,结果判断的时候还把c++的&&和||写成了and和or,旁边巡视的技术官看了说了一句你写的事伪代码么,我还愣了半天才反应过来。还是没有经过实战啊。这道题题目的叙述似乎有些问题(已经忘了是怎么叙述的了),我提交了显示得了60分但是答案还是错误。。。

#include<iostream>
using namespace std;
bool judge(char* ch){
	bool result = false;
	if (*ch >= 'A'&& *ch <= 'Z'){
		for (char *p = ch + 1; *p != NULL; p++){
			if (*p >= 'A' && *p <= 'Z'){
				result = false;
				break;
			}
			result = true;
		}
		
	}
	return result;
}
int main(){
	char c[128];
	cin >> c;
	if (judge(c))cout << "true";
	else cout << "false";
	return 0;
}

第二题就更简单了,输入两个非负整数,然后每个数字颠倒顺序,如123颠倒之后就是321,反向求和输出。我一次提交通过。

#include<iostream>
using namespace std;
int reverse(int q){
	int result=0,k;
	while (q){
		k = q % 10;
		q /= 10;
		result = 10 * result + k;
	}
	return result;
}
int main(){
	int i,j;
	cin>>i>>j;
	i=reverse(i);
	j=reverse(j);
	cout<<i+j;
	return 0;
}
 第三题,最佳匹配问题,给出一组女士姓名的拼音字符串数组,然后输入一个男士的姓名拼音字符串,找出两者相同字母最多的那个,就是最匹配的。相同重复字母的只算一个 

我的思路就是遍历,反正题目对运行时间没有要求,对于每一个女士的姓名,每个姓名的字母和男士的姓名的每个字母比较,是个三重循环,循环太复杂了,加上那时候思维比较混乱,也就不考虑相同重复字母的问题了。我寄希望于测试案例能够给个特例,即不给相同字母的测试样例,至少能让我通过几个,拿到些分数,况且,我测试了几个有重复字母的也能匹配出正确结果,结果提交了5次全部悲剧了,看来还是不能侥幸啊。

这次机试还是暴露出不少问题的,首先是平时练习不够,尤其是没有系统学过数据结构算法,遇到问题不知从哪下手。其次,考试的时候太紧张,说到底还是实力不够。三,考试的时候太过着急,有几次直接把调试用的输出语句忘了注释提交上去了,还有最后为了防止命令行窗口一闪而过,我加了system("pause");不知这个是否也影响最终结果。最后一道题提交了两次之后,我才发现有提交评判之后又错误信息,指示哪里出错了,而我竟然都忽视了。。。。。

之后的性格测试就更是扯淡了。大体按照具有上进心,责任心、团队素质这方面选,注意前后答案一致。不过题目的规律是前一轮给六个选项,让你选及其同意,一般同意,同意,不确定,不同意,及其不同意等等等等,然后根据你的选项,排除掉一些,然后再把这些重复的选项在第二轮让你再次选择,哪个最接近你,哪个最不接近你。我去,我刚选了同意A,接下来就有可能在第二轮选择最不接近A,不是自我矛盾么。。。。。据说有人就因为这个不通过,被要求重新做了。。。。

做完之后,问了一下工作人员,被告知可以离开了。问他们什么时候通知面试,以及面试大概内容,都守口如瓶。不过以我的成绩,应该能取得面试资格的吧。。目测面试又是坑爹的群面。。哎,好难。。。还是等华为的短信通知吧

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值