9月16日晚上參加美團網(北京三快科技有限公司)筆試,筆試題技術類的爲一套試卷,厚厚的一打,全是編程題,沒有小題,前8題爲必做題。
聲明:尊重公司機密,請勿轉載擴散,內容只涉及自己的回憶與總結,具體問題與具體內容不便透漏。如本文有侵權,請聯繫作者刪除。
筆試
記得的題目有:
求序列的所有子序列;
將4位整數轉換成用漢字描述:如1234->一千二百三十四
計算概率的題目(機動車搖號)
選做題中嵌入式的是:Linux下運行elf的可執行文件Helloworld程序,都調用了哪些系統調用。
然後17日中午收到面試通知,18日面試。
面試
面試首先現場寫一個函數char* strstr(char* , char*),然後主要問了我有關項目的一些內容,不只是關心項目中的嵌入式(ARM,DSP),而且關心項目中所用的算法之類的。並且讓我畫一些示意圖。另外還問在項目中遇到的最大的困難是什麼。
最後告訴我美團做的比較多的是STM32的單片機RTOS+界面顯示(貓眼電影)之類的產品,並且後面會用高端的平臺。具體細節不方便透漏。
硬件類面試只有一面,說下週可能會有電話面試,通過的話需到總部boss面。
總體感覺HR是做技術的,然後聊的比較輕鬆,態度也蠻好。期待順利通過。
回來寫了下strstr函數附在下面吧:
//============================================================================
// Name : T_test.cpp
// Author : guo
// Version :
// Copyright : Your copyright notice
// Description : Hello World in C++, Ansi-style
//============================================================================
#include <iostream>
#include <cstring>
using namespace std;
char * mystrstr(char * str, char* sub_str)
{
if(str==NULL || sub_str ==NULL)
return NULL;
while(*str!='\0')
{
char *p=str;
char *q=sub_str;
char *res=NULL;
if(*p==*q)
{
res = p;
//while(*p++ == *q++);//有bug
while( (*p==*q) && *q!='\0' ){p++;q++;}
if(*q=='\0')
return res;
}
str++;
}
return NULL;
}
int main() {
char sa[20]="abcdefghi";
char b[4]="ghi";
char *p=NULL;
p=mystrstr(sa,b);
if(p==NULL)
cout<<"erro"<<endl;
else
cout<<"find substr "<<p<<endl;
cout<<"lib find "<<strstr(sa,b);
return 0;
}
電話面試:
9.25收到電話面試通知,電話面試仍然是技術面試。加問工作地點等問題。
Linux內核、操作系統、驅動、項目相關的、視頻編碼(因爲我的項目有寫相關內容);
Linux是如何進行內存管理的?
Linux的文件系統架構?
視頻編碼的過程、塊和宏塊是否是一個概念?
file_operation結構內的成員函數有哪些?
struct file_operations{
.owner,llseek,read,write,aio_read,aio_write,readdir,poll,ioctl,mmap,open,flush,release,fasync,lock,...}
在Linux下開發用了哪些開發工具,QT相對其他IDE的最大特點是什麼(跨平臺),它裏面的什麼機制(信號和槽)用起來是很方便的。
你們學校每個人幾份三方,老家是哪等知識。
總時長大概40分鐘。