3-18 小红书C++一面

交叉面 
面试官真的对我好炸了,面试官全程在跟我说没事没事,我全程在感谢面试官hhh
感觉真的像是那种长辈对晚辈的指点。 虽然我没表现好,但体验真的太好了,我一回答不上来他就帮我说了,还让我不要紧张没事,没关系啥的
80min
讲讲b树和B+树吧
数据库为什么以它作为索引,有什么好处吗,为什么B+树比b树更适合所以
说一下mysql的聚合索引和非聚合索引?  我说不会 
说一下哈希表底层吧
说一下c++的智能指针, 如果让你实现一个智能指针你要实现哪些东西,我只知道构造函数。。。我说还需要支持原子操作啥的吗
然后面试官给我补充需要一个指向引用计数的指针,拷贝构造函数,初始化构造啥的...
说一下互斥锁和自选锁吧,然后他们各有什么优缺点,使用于什么场景 面试官帮我答了因为互斥锁会导致线程从睡眠到就绪态,会有上下文切换耗费时间,所以用自选锁就没这个问题
了解用户态和内核态吗
如果让你实现一个线程池,你会用哪些实现, 我随便说了说 面试官说你不怎么了解java ,这个不知道也很正常
说一下TCP的三次握手四次挥手,为什么三次和四次,针对三次握手的CD啥攻击,我说我只了解syn攻击,然后我说的也不太对。。。 我还背错了个东西
C++的. rall. 压根没听说过 不会
C++的lock_groud 压根没听说过 不会
然后面试官说你更多的是移动端的经验,我也不太知道问什么了~
那我们写个题吧
连标排序,反正我归并是写叉撇了,整死循环了,面试官简单训了我一下。。。 他说你平时刷LeetCode应该肯定刷到过啊(可我真没写过这种连标题呀),对你来说应该非常简单的题,我一直在嗯嗯
我说能自己写个堆吗,面试官说最好还是全用连标。 然后就写死循环了
#include <iostream>
using namespace std;

// To execute C++, please define "int main()"

// The TestCase is shown below
// Input : 1 2
// Output : 3



struct ListNode {

   int val;

      ListNode *next;

    ListNode() : val(0), next(nullptr) {}

    ListNode(int x) : val(x), next(nullptr) {}

    ListNode(int x, ListNode *next) : val(x), next(next) {}

 };



ListNode* merge(ListNode *head, ListNode *leftNode, ListNode *rightNode, ListNode *midNode){
	ListNode *newHead = new ListNode(-1);
	ListNode *realHead = newHead;
	ListNode *p = midNode->next;
	while(leftNode != midNode && p != rightNode){
		if(leftNode->val <= p->val){
			newHead->next = leftNode;
			leftNode = leftNode->next;
		}
		else {
			newHead->next = p;
			p = p->next;
		}
	}
	while(leftNode != midNode){
		newHead->next = leftNode;
		leftNode = leftNode->next;
	}
	while(p != rightNode){
		newHead->next = p;
		p = p->next;
	}
	return realHead->next;
}

ListNode* mergeSort(ListNode *head, ListNode *leftNode, ListNode *rightNode){
	ListNode *newHead = head;
	if(leftNode == rightNode) return leftNode;
	ListNode *midNode = head;
	ListNode *right; 
	while(newHead){
		midNode = midNode->next;
		newHead = newHead->next;
		if(newHead->next == nullptr){
			right = newHead;
		}
		if(newHead) newHead = newHead->next;
		if(newHead->next == nullptr){
			right = newHead;
		}
	}
	mergeSort(head, leftNode, right);
	mergeSort(head, midNode->next, rightNode);
	return merge(head, leftNode, midNode, rightNode);
}

int main() {
	printf("dqwwqddwq");
	ListNode *p[10];
	for(int i = 0; i < 10; i++){
		p[i] = new ListNode(rand()%18);
	}
	for(int i = 0; i < 9; i++){
		p[i]->next = p[i + 1];
	}
	
	printf("dqwwqddwq");
	ListNode *head = mergeSort(p[0], p[0], p[9]);
	while(head){
		printf("%d---", head->val);
		head = head->next;
	}
  	return 0;
}


反问  我直接来了一句 为今天的表现向您说一句抱歉,他还说你还是比较优秀的,他一直在帮我找借口
面试官然后说了很多让我去了解底层的一下话,太感动了,还说他看到我有点感同身受的样子,他还说他以前也打过ACM,成绩应该是比我好,我差点就叫爹了
后面给我过的话我一定好好准备 这简直就是亲爹啊!

#小红书校招##小红书##面经#
全部评论
太感动了也
1 回复
分享
发布于 2022-03-18 20:55
对于连标是啥陷入了五分钟的沉思...
1 回复
分享
发布于 2022-03-21 23:54
滴滴
校招火热招聘中
官网直投
同步一下,已经挂了,小红书hr还给我微信好友删了,可恶😂
5 回复
分享
发布于 2022-03-22 12:46
楼主好幸运,加油呀~
点赞 回复
分享
发布于 2022-03-18 22:40
看到了当年的自己
点赞 回复
分享
发布于 2022-03-19 08:53
楼主面的是什么岗位呀?实习还是校招?
点赞 回复
分享
发布于 2022-03-20 21:28
请问这是小红书什么部门
点赞 回复
分享
发布于 2022-03-21 21:33

相关推荐

头像
timeline:3.28投递&nbsp;4.2笔试(100,100,10)&nbsp;4.3一面(1h)1.&nbsp;自我介绍2.&nbsp;看你接触过前后端、AI相关的,为什么选择做前端呢?3.&nbsp;你是怎么学习前端的?4.&nbsp;上面提到你看了新的React文档,发现自己以前踩过的坑,有哪些呢,具体说说?(这里讲了纯函数、生产模式下render两次、useState的一些社区讨论的不好的点,引申出内部是链表实现的,顶层调用)5.&nbsp;写过一个根据yaml文档生成word接口文档的工具,问这个的实现方式,为什么要写(因为甲方看文档而我懒)6.&nbsp;有没有通过这个yaml文档提高前端开发的效率呢?(讲了前端根据yaml文档生成api接口代码,可以直接调用)7.&nbsp;那么后端怎么利用这个yaml文档呢?(我说swagger有个工具可以根据yaml生成后端的一些代码)8.&nbsp;现在有什么已经成熟的方法打通前后端接口呢?(已经汗流浃背了想了半天说不知道了,面试官说使用DB的方案,还指出我上面的方案有时候容易出错,yaml文档不稳定)9.&nbsp;介绍一下实习过程中写的东西(有五个部分,讲的口干舌燥)10.&nbsp;实习中做了移动端适配,什么方案?tailwind怎么实现的?要写两套css吗?scale怎么实现的?为什么不用rem、vw之类的?(我说因为还要换算,他说不用每次都换算啊,我说那还得通过css预处理器写函数或者每次心里算一下是多少rem,他说好的)11.&nbsp;知道样式污染吗,怎么避免样式污染?(我说内联样式能避免,他说不好;我说css-in-js,他说比那个好点;我说es&nbsp;module,他问es&nbsp;module怎么避免样式污染的)12.&nbsp;用过css预处理器吗,includes和extend什么区别?你用css预处理器干什么(转换px到rem……)13.&nbsp;讲讲monorepo使用changesets发包的流程,github&nbsp;ci/cd的过程,在这个过程中会出现安全问题吗?有两个小伙伴同时要发包,怎么办?(pr没合之前会合并成一个pr)14.&nbsp;讲讲你比较有意思的一个项目?15.&nbsp;好了问点八股吧,怎么实现两栏布局,尽可能多的说。16.&nbsp;数组怎么去重,尽可能的说。(太多字了看图)
点赞 评论 收藏
转发
11 31 评论
分享
牛客网
牛客企业服务