新鲜的面筋
今天收到offer了,将珍藏的面筋发出来,祝大家好运
搜狗面试
一面:
自我介绍
code-旋转有序数组查找指定值的下标,无重复,不存在返回-1;
code-有序有重复数组查找指定值第一次出现的下标,不存在返回-1;
项目……
找机试编程题的错误
聊聊他们部门干什么的
……
二面:
自我介绍
项目……
code-字符串不含重复字符的最长子串,返回子串
code-字符串“sougouhefei”
字典["sougou","xxxx","he","fei",soug","ouhefei","ttttt"]
最短拼接次数
select和epoll的实现原理
……
百度
一面:基础面
喜欢什么运动
自我介绍
代码找错 (好多题)
#include<stdio.h>
int func(void){
return 5;
}
int main() {
static int d = func();
printf("%d\n", d);
return 0;
}
code-判断有向图是否含有环
STL中的数据结构使用过哪些
map的实现(RB树)
vector的增长与复制(allocator)
网络五层协议是那5层
数据库中一个表非常大,如何优化
如何提高查询速度
mysql如何建立索引
进程和线程的区别
python range/xrange str()/repr()
项目里有什么难点或者有意思的地方
腾讯:
一面:
项目介绍
C语言程序题(好几题)
int i = -20;
unsigned int j = 6;
int c;
(i + j < 0) ? c = 1 : c = 0;
return c;
引用和指针的区别
进程的通讯方式
无临时空间交换整数的方法(两种,+-法的缺点)
swap分区的作用,什么可以被交换出去?
socket阻塞会返回的情况,出错有哪几种
哪些函数不能声明为虚函数
长度为n的数组,取值范围1~n,判断有无重复
长度为n的字符串A,长度为m的字符串B(m<n),查找A串中是否包含B串,要O(n+m)的算法
猴子吃桃的问题
4个瓶子,13中颜料,只有一种遇水2分钟变蓝,有足够的颜料和水,最少多少时间可以找出这个颜料?
附加题:4个瓶子最多可以处理多少种颜料
8个抽屉,一个文件有80%的概率随机的放到一个抽屉中,20%的概率不放,先打开第一个抽屉发现文件不在第一个抽屉,在其它7个抽屉的概率是多少
信号中断处理函数中是否能用malloc函数
本科的编码量有多少万行? 这么多行代码是做项目的还是自己练习的
二面:
定时器的设置
time()函数返回单位为秒的当前时间
add(timesInterval,func)
run() 判断时间是否到达,并调用相应的程序,设计数据结构,和run的算法
read/write,fread/fwrite的区别,write写文件成功后突然宕机,磁盘中内容是否正确
1G内存是否能加载2G的程序运行,swap分区的交换
rand()随机等概率的返回1~无符号最大值中间的一个值,依次随机调用,若遇到已经生产的数字,则停止调用,问调用次数的期望
http报文的格式,头部包含哪些
URL的解析过程
今日头条:
一面
tcp的三次握手,为什么不是2次和4次
tcp的四次挥手C/S中哪个先发起,为什么一般不是服务器先发起(Time_Wait阶段)
最大盛水量问题[a1, a2, ..., an] ai为i处的高度
单链表,判断是否回文。
设计一个结构,要求所有操作复杂度为o(1)
insert(x) 插入元素
delete(x) 删除指定元素
getRandom() 等概论返回结构中的值
如依次插入[1,2,1,3,1],返回1的概率是3/5
hash_map<value,index> + vector
插入x: x插入到vector最后,hash_map中插入 <x,vector.size() - 1>
删除x:
hash_map中找到<x,index1>并删除,将vector最后一个位置的元素替换,并调整最后一个元素在hashmap的下标
二面
线程间的通讯方式
虚拟空间地址寻址过程,虚拟空间作用
水平触发和边缘触发,select和epoll的区别
a[n] a[1]>a[0] a[n-2]>a[n-1] 求所有的峰值,既a[i]满足
a[i-1]<a[i]>a[i+1]
二叉树转换成 双向链表