栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

c++研发暑期实习面试总结(微软/intel/阿里/百度)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

c++研发暑期实习面试总结(微软/intel/阿里/百度)

到现在差不多也定好了实习。
晚上简单做个总结。可能有些也记不太清楚了。唉我真的很懒很废物。
明天随着其其的新歌重新开始。


本人研二,大学期间拿过区域赛银牌,然后硕士期间发了一篇VLDB。缺项目经验和实习经验。
找的实习是C++研发。
一方面考虑到是自己最右安全感的语言,另一方面想要职业寿命久一些:我的想法是想搞底层、越深入越好。

微软(有offer,没去

苏州CMD 软件工程师
微软的面试上主要是看数据结构和算法,面试官会仔细沟通算法的复杂度和详细思路。等沟通通过了再让你开始写。
一二面平行面,进了任意一面可进终面。

一面

给一个数组,找到正好有k个奇数的区间数量。
尺取法。

#include 
using namespace std;
const int INF = 0x3f3f3f3f;
const int NMAX = 10010;
int n, k;
int x[NMAX];
int r1[NMAX], r2[NMAX];

int main(){
    while(~scanf("%d%d",&n, &k)){
        //输入
        for(int i=0; i
            scanf("%d",&x[i]);
        }
        //找初始左端点的k个奇数
        int cnt=0, r=0;
        for(r=0; r
            if(x[r]%2) cnt++;
            if(cnt==k) break;
        }
        //无法找到k个奇数
        if(r==n){
            printf("无法找到-1n");
            continue;
        }
        //对每个左端点找正好为k个奇数的最右端点
        memset(r1,-1,sizeof(r1));
        int l=0;
        printf("r1:");
        while(l
            r1[l] = r;
            cout<
                r++;
                while(r
            printf("%d ",rr);
            tot += rr-r1[l];
            if(x[l]%2){
                rr++;
                while(rr
//            if(r1[i]<0){
//                break;
//            }
//            int rr=r1[i]+1;
//            while(rr 
二面 

给一个map,其中有0有1,0是海岸,1是陆地。
离陆地最远的海洋是多远?
bfs把所有陆地放入其中。

#include
using namespace std;
const int INF = 0x3f3f3f3f;
const int NMAX = 1010;
typedef pair P;
int mp[NMAX][NMAX],n,m;
int dis[NMAX][NMAX];
int dx[]={-1,0,1,0};
int dy[]={0,1,0,-1};

void solve(){
    queue 

q; for(int i=0; i for(int j=0; j if(mp[i][j]==1){ q.push(P(i,j)); dis[i][j]=0; } else{ dis[i][j]=INF; } } } while(!q.empty()){ P now = q.front(); q.pop(); for(int i=0; i<4; i++){ int nx = now.first+dx[i]; int ny = now.second+dy[i]; if(nx>=0 && nx=0 && nydis[now.first][now.second]+1){ dis[nx][ny]=dis[now.first][now.second]+1; q.push(P(nx,ny)); } } } int mxdis=0; for(int i=0; i for(int j=0; j mxdis = max(mxdis, dis[i][j]); } } printf("%dn",mxdis); } int main(){ while(~scanf("%d%d", &n,&m)){ for(int i=0; i for(int j=0; j scanf("%d", &mp[i][j]); } } solve(); } return 0; }

终面

给出一些docker的启动顺序,问启动所有docker至少需要多久。
拓扑序。

Intel(有offer,去的

上海flex。

二合一面,一共有快俩小时。
两个面试官轮流问计算机基础问题。包括:

  • C++基础基本上问了遍:拷贝构造和赋值分别咋写、const、static、const指针和指针const、虚函数表、静态动态绑定、new delete实质、new一个对象的全过程……
  • 计算机网络:三次握手、四次握手、重传、拥塞……
  • STL:setmap(红黑树)B树、B+树、vectorlist区别……
  • Linux:内存命令、用户态内核态切换、熟悉的命令……

也被问到了很多答不上来的,每一科都会问到知道的最深部分为止吧。
题目用的是leetcode答题系统。
一道是层序遍历二叉树
另一道是流的形式去找中值,用两个堆来实现(一个最大堆、一个最小堆)。

阿里 阿里云(hr面挂 一面

算法题:
1.手写最大堆、插入、弹出。
2.dijkstra
3.dp问题?是啥dp我忘了反正不太难吧。

二面

随便聊了点有的没的。
题目是手写stack实现,用的指针方式。
leader说有上海base。

hr面

hr说并没有上海base。
当时一心只想要上海的base。是我动手拒的(sorry(实在是人还没被关够

本地生活 (二面挂 一面

体验感还行。也比较有礼貌。
但是问的知识面有些鸡同鸭讲,我的论文做的复杂度降低。
主要问C++11的特性。
代码:手写智能指针shared_ptr。

二面

我被恶心坏了。
昨天加我微信约面试时间的时候,问了一句:你是女生?当时我就有种不太妙的感觉。

今天迟到一个多小时。
对着我的简历一条条打压我。
说我竞赛成绩不好、看着没啥优点、总结一下我的优点是我作为一个女生还算聪明。呵呵。
然后出了道very easy的字符串解析,做完就挂我。

fine。这个世界上人类就是有各种各样的。

百度(一面挂

感觉上海base hc不够的样子,我理解啦)

英特尔问过的没问过的问题所有基础知识都有问。
再加上了数据库方面的问题、建索引的策略……
这次准备的基本上都能答上。

题目:
1.大整数(字符串)相加
2.链表删除连续相同值


最后谈谈我的想法吧。

暑期实习其实对后面秋招还蛮重要的。如果在春招直接踏入996的生活,除了转正很难再做别的打算。虽然大部分人都会直接选择实习转正,但我不想。
英特尔我看了所有风评都很不错,那边会有专人一对一,带实习生入门,然后工作时间955不加班。而且也和我接触底层的想法相契合。
留下的话是著名养老院,福利不错。即使不留下,这段实习既能为秋招加点码,也不耽误准备。
(暑假自己还想再考个日语,攒钱攒语言攒业务能力,有机会潤就好了。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/850847.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号