华为提前批+腾讯tst内推

楼主计算机研究生二年级,研究方向存储系统。上周参加了上海华为提前批的校招面试,面试之前先做测评和机考,机考是两道题,限时两个半小时,很简单,一题是根据1900.1.1是星期一,计算出以后某个日期是星期几,另外一题是判断一个数字是不是2的幂次,测评是性格测试,很多很繁杂,反正做到最后我都怀疑自己的性格,结果第二天hr打电话说我测评没过,要重做。。。不过,华为对这次提前批挺重视的,反正我是被打动了。上午专车从学校接人到上研所,接着我们大概30-40多人被安排到一个会议室里听宣讲会,华为几个部门的领导都来讲(无线、终端、2012、云核、***研究院,还有一个忘了),主要讲他们业务、分布、需要的人、有哪些牛人,接着让我们选志愿,我选了终端操作系统方向,说实话,我挺想以后做操作系统的工作的。然后hr请我们下去吃饭,感觉华为食堂好大,餐馆好多,跟一般商场里的餐馆差不多,感觉最近吃的最丰富的饭就是那顿饭了。期间,主管跟我们讲解了华为加班情况,据说,现在星期二四加班,月末周末加班,然后发布新产品前会忙一点,但我想吧没那个互联网企业不加班的吧,除了外企,楼主现在在上海英特尔实习,这里真不加班,氛围也挺好,但是感觉中国外企都做不了核心的业务,个人提升的途径也不是很好。说远了,吃完饭,我们又参观了华为的展厅,看了各种各样的手机,手表,平板。下午面试,面试分为技术面和综合面,技术面是一个从原来在英特尔工作的工程师面我的,刚好他也是做存储的,面对对口专业的面试官,感觉好有压力。面试大概40分钟,先是自我介绍,然后介绍了一下我做的一个Linux文件系统,针对项目问了一些Linux内核的基础知识,如伙伴系统、slab缓存,然后是说怎么根据大量小型文件读写的情景改进我的设计,怎么对存储区域做垃圾回收(碎片化整理),怎么从源头上解决小型文件带来的碎片化问题。接着是综合面,综合面是华为终端的主管(?,不太确定),先是了解了一下个人情况(家庭、学校、兴趣爱好,与自我介绍不一样的那些东西),接着介绍华为和他所在部门的情况,薪酬预期(今年华为给的薪水挺高的),说是综合面,基本是他一个人在说,我负责嗯嗯和点头。。。总的来说,华为的面试深度挺高的(个人感觉),而不是其他公司常面的那些堆栈、进程线程、算法题等(吐个槽),而且基本是针对项目来面,准备也好准备。
腾讯tst
我是内推那一周投的内推,职位是后台c++开发,过了一周大概7.29一面,一面是技术面和简历面,我选的是深圳SNG,结果来电话的是深圳互动娱乐事业群的。面试官说他是做手游开发的,问我可不可以跟他面,我当然说可以啦,然后他又要开视频。面试实录:
1 自我介绍
2 介绍项目,并针对项目问问题
3 介绍一下ARP协议
4 介绍一下c++的多态
5 堆和栈的区别
6 接着在QQ上做题,
class Base
{
public:
Base(){ std::cout<<"Base::Base()"<<std::endl; }
~Base(){ std::cout<<"Base::~Base()"<<std::endl; }
};
class Base1: public Base
{
public:
Base1(){ std::cout<<"Base1::Base1()"<<std::endl; }
~Base1(){ std::cout<<"Base1::~Base1()"<<std::endl; }
};
class Derive
{
public:
Derive(){ std::cout<<"Derive::Derive()"<<std::endl; }
~Derive(){ std::cout<<"Derive::~Derive()"<<std::endl; }
};
class Derive1: public Base1
{
private:
Derive m_derive;
public:
Derive1(){ std::cout<<"Derive1::Derive1()"<<std::endl; }
~Derive1(){ std::cout<<"Derive1::~Derive1()"<<std::endl; }
};
int main()
{
Derive1 derive;
return 0;
}
#include <iostream>
#include <stdio.h>
#include <stdlib.h>

using namespace std;

struct A 
{
    short a1; 
    short a2; 
    short a3; 
};

struct B
{
    long b1; 
    short b2; 
};

int main()
{
    char* s1 = "0123456789";
    char s2[] = "0123456789"; 
    char s3[100] = "0123456789"; 
    int s4[100] = { 0 };
    char* str1 = (char *)malloc(100);
    void* str2 = (void *)malloc(100);
    
    cout << sizeof(s1) << endl;
    cout << sizeof(s2) << endl;
    cout << sizeof(s3) << endl;
    cout << sizeof(s4) << endl;
    cout << sizeof(str1) << endl;
    cout << sizeof(str2) << endl;
    cout << sizeof(A) << endl;
    cout << sizeof(B) << endl;
    
    return 0;
} 
char *GetMemory(void)
{
char p[] = "hello world";
return p;
}
void Test(void)
{
char *str = NULL;
str = GetMemory();
printf(str);
} 
void GetMemory(char *p)
{
p = (char *)malloc(100);
}
void Test(void)
{
char *str = NULL;
GetMemory(str);
strcpy(str, "hello world");
printf(str);
} 
void GetMemory(char **p, int num)
{
*p = (char *)malloc(num);
}
void Test(void)
{
char *str = NULL;
GetMemory(&str, 100);
strcpy(str, "hello");
printf(str);
} 
class AAA {
public:
    virtual void Test() = 0;
};
sizeof(AAA) = ? 
7 继续做题。。。求复杂度
n = 10
for (i = 1; i < n; i++)
    for (j = 1; j < n; j += n/2)
        for (k = 1; k < n; k = 2*k)
            x = x + 1;
8 还是做题,设计算法,找到单向链表的中间位置的节点,如果中间位置是两个节点,找到第一个。实现算法,进行单向链表的逆置(分别递归和非递归)。
struct Node {
	int data;
	Node* next;
};

typedef Node* List;
9 有一个集合,其元素为所有大写英文字母,即{ A, B, C, ..., X, Y, Z },设计递归和非递归算法,输出该集合的所有子集。
今天晚上二面,过了这么久还以为挂了,结果又要视频电话,期间因为网络问题断断续续,体验不是很好。主要就是自我介绍,我的兴趣爱好。问我的项目,项目中遇到的问题,怎么解决,我在项目中扮演的角色等等,又谈到了腾讯的文化、新员工怎么融入集体等,他还开玩笑说我要是挂了会不会参加十月的校招,当时就想别吓我啊。。大概十五分钟,不知道结果。
现在大概就这些,然后未完待续,以后还参加面试的话继续在这里补充吧。


#腾讯##华为#
全部评论
//华为第一个代码实现 #include<iostream> #include<string> #include<sstream> #include<cmath> #include<algorithm> using namespace std; int a[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31}; string week[8]={"","Mon","Thes","Wes","Th","Fri","Sat","Sun"}; bool isvalid(int year) { if(year%400==0 || (year%4==0 && year%100!=0))return true; return false; } int main() { string str; while (cin >> str) { string tmp; unsigned int loc = str.find("."); tmp = str.substr(0, loc) + " "; str = str.substr(loc+1); loc = str.find("."); tmp = tmp + str.substr(0, loc) + " "; tmp = tmp + str.substr(loc+1); stringstream ss(tmp); int y, m, d; ss >> y; ss >> m; ss >> d; cout << y << " " << m << " " << d << " "; int totaldays = 0; totaldays = (y-1991)*365; for(int i=1991;i<y;i++) { if(isvalid(i))totaldays++; } for(int i=1;i<m;i++) { totaldays +=a[1]; } if(isvalid(y)&&m>2)totaldays++; totaldays+=d; totaldays = totaldays%7+1; cout<<week[totaldays]<<endl; } cin.get(); return 0; }
点赞 回复 分享
发布于 2016-08-11 20:14
楼主拿到腾讯TST的offer了吗?或者现在是什么状态?
点赞 回复 分享
发布于 2016-08-22 19:45
华为优招用在官网注册申请岗位么
点赞 回复 分享
发布于 2016-08-18 13:17
楼主交大的么 华为提前批怎么参加的啊
点赞 回复 分享
发布于 2016-08-16 10:40
我也要面试了,好吓人啊,视频面试
点赞 回复 分享
发布于 2016-08-15 18:50
楼主拿到腾讯offer了吗?
点赞 回复 分享
发布于 2016-08-14 11:14
请问华为机试的时候,是直接在测试系统上敲代码吗? 电脑上有没有其它编程工具可以用来调试,然后再把代码粘贴到测试系统上呢?    还有。。。。机试的时候要是没有思路,想用纸笔怎么办啊。。。。。
点赞 回复 分享
发布于 2016-08-13 20:44
腾讯第九题是怎么做的啊
点赞 回复 分享
发布于 2016-08-13 16:25
//华为第二题 #include<iostream> #include<string> #include<sstream> #include<cmath> #include<algorithm> using namespace std; int main() { int n; while (cin >> n) { bool flag = true; while (n) { if (n % 2 == 1 && n != 1) { flag = false; break; } n = n >> 1; } if (flag)cout << "Yes" << endl; else cout << "No" << endl; } cin.get(); return 0; }
点赞 回复 分享
发布于 2016-08-11 20:19
哥你第二次做华为的性格测试跟第一次有区别吗 我也挂了一次。。
点赞 回复 分享
发布于 2016-08-11 20:02
总共就三四十人啊,这么少,不知道录了多少?
点赞 回复 分享
发布于 2016-08-11 12:21
楼主,第七题是O(nlogn)的时间复杂度吗?
点赞 回复 分享
发布于 2016-08-11 11:03
原来是你……
点赞 回复 分享
发布于 2016-08-11 01:47
逗你玩的面试官多半是看上你了 楼主很强 谢分享
点赞 回复 分享
发布于 2016-08-10 23:29
👍
点赞 回复 分享
发布于 2016-08-10 23:07

相关推荐

点赞 评论 收藏
分享
香菜好吃啊啊啊啊:实习经历可以考虑放上去,对于软件使用方面可以细化一些,比如调整为:熟悉基于LSDYNA的瞬态动力学仿真分析,熟悉基于WORKBENCH的结构拓扑优化
我的简历长这样
点赞 评论 收藏
分享
牛客34884196...:你期望薪资4-5k,那确实可以重生了,但很难在深圳活下去
点赞 评论 收藏
分享
阿里系笔试成绩互通吗?
投递阿里巴巴控股集团等公司10个岗位
点赞 评论 收藏
分享
评论
14
45
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务