C++: 1 :C++多态的实现方式,虚函数的底层实现细节。 2:继承类调用构造函数顺序和析构函数顺序,什么时候要将 析构函数定义为虚函数。 3:引用与指针区别 4:new 与 malloc的异同处。 5:结构体内存对齐方式。
算法与数据结构: 1:给一个正整数n,现在想将n分成若干个正整数,使得它们的乘积最大。 2:经典的n个数求前k大的数。分两种情况,第一是没有相同的数,另外一种是有。 3:和百度二面问的一模一样,两个文件A和B,求A中没有但B中有的单词。
网络: 1:TCP与UDP区别,三次握手,四次挥手。。
1、代码在内存中的分布都有哪些区,宏定义存在刚才你说的哪个区域?堆栈有什么区别啊,堆中的数据会回收吗,malloc和new有什么区别?
2、说一下虚函数表是什么(C++后台开发必问),为什么析构函数都是虚函数,不这样会怎么样?
3、多态和重载都是什么?
4、知不知道现在C++现在发行到那个版本了?C++11有哪些新特性?
5、算法题问了三个,100万数据找top k,判断一个数是不是2的幂,两个单链表有公共节点,找出第一个。
6、TCP三次握手、四次挥手、超时重传。
7、Linux现在发行到哪个版本了?你一般用Centos还是Ubuntu啊,为什么?
8、Linux下查看内存使用命令是什么?查看负载的命令是什么?
9、SVM怎么分类的,有哪些核函数,如何优化SVM?
10、word2vec怎么实现的?
11、你有什么想问的?
1、c++虚函数和纯虚函数有什么区别,分别应用在什么场合?
2、子类析构会调用父类的析构函数吗?执行顺序是什么?
3、程序的内存分布。
4、知不知道桶排序和希尔排序,希尔排序和快速排序区别。
5、画出TCP的三次握手,为什么一定要三次,两次会有什么后果?
6、SQL语句,查询两个数据库表中ID相同的信息。
7、STL用过吗?map和hashmap的区别,查找的时间复杂度分别是多少?
8、手写两道算法题:二分查找和一个很简单的二维数组搜索。
9、场景题:现在要完成一个微博评论的部分,想在用户进入新闻时优先看到自己好友对此新闻的评论,好友可能有多条评论,怎么设计结构。
10、智力题:36匹马6个跑道无秒表选前三,最少跑几轮。
11、你有没有什么想问的?
2、Linux下如何查看网络中服务器状态?
3、Linux下TCP服务器都有什么状态?
4、Linux下TIME_WAIT和CLOSE_WAIT区别是什么?
5、知道epoll和select吗?
6、创建一个TCP服务器的步骤是什么?
7、端口是干什么用的?
8、知道哪些排序算法,说一下时间复杂度,快速排序什么情况下时间复杂度最高?
9、图中的最短路径问题怎么求、迪杰斯特拉算法和弗洛伊德算法的区别有哪些?
10、B树和B+树的区别有哪些?
11、操作系统中的PV操作是做什么用的,能否举个例子?
2)Web编程项目:
• 是否用了SpringMVC框架
• 用的哪一个HTTP版本
• 列举HTTP Header中的字段
• 一个网站如何判断用户访问是来自于PC端还是移动端
• 如果用户量大的话,什么扩展机制可以支持网站的正常运行
• 聊天室功能中,服务器端是否有采用数据推送的方法
• 服务器宕机的处理机制
3. 技术基础
1)Hadoop:
• Hadoop的HDFS架构及内部机制
• 如果NameNode宕机了,还可否继续运行?
2)数据库:
• MySQL引擎有了解吗
• InnoDB索引底层数据结构
• B+树实现索引的原理、优点
3)计算机网络:
• 网络安全方面的协议是否了解(HTTPS SSL的加密机制)
• TCP和UDP的区别
• TCP运输层和网络层的职能
• TCP拥塞控制机制
• TCP/IP中路由是哪一层实现的,路由的原理是什么?
4)Java基础:
• HashMap的原理,是否为线程安全的?
• 线程安全的HashMap实现方法(ConcurrentHashMap)
• Java同步/异步IO
• Java多态及背后的实现机制
5)算法:
给定一个无序数组,查找中位数
最后面试官会问你有没有什么想要问他的,强烈建议大家在此时问一下事业群及部门的名称、业务,这样利于第二轮面试,比如根据不同业务有侧重地去复习二面。另外,面试你的组是因为你的简历某种程度上跟该组业务有契合之处,才发起面试,所以一定是你通过全部面试后要进入工作的组。
• 如果让你自己设计一套网络层的传输协议,都需要考虑哪些方面,为什么要这样设计?(不要一直说TCP的东西,面试官说TCP也有TCP的缺点)
• 以大型网站为例,你认为如果想设计一个稳定、高效的后台,都需要有哪些部分以及各部分的要点?
• 从用户在浏览器中输入一个url并点击回车,到浏览器界面出现内容,都发生了什么?
1、析构函数
2、操作系统内存管理
3、Linux指令
4、Tcp/ip
5、TCP协议
1、快排
2、堆排(大、小)
-
自我介绍
-
排序的稳定性是什么,什么样的排序是稳定的?
-
对C++的学习掌握情况怎样?
-
一个C++程序从编译到运行都经历了哪些阶段?
-
C++的特点是什么?
-
C++多态是怎么实现的?
-
static和const关键字是干什么的?
-
举例自己熟悉的设计模式,并且解释观察者模式
-
设计模式在平时应用的情况
-
tcp udp位于什么层,有什么区别?
-
linux命令的举例
-
一个32位机器上linux进程最大可以申请多少空间?
-
大端法和小端法指的是什么?在纸上写一个程序进行验证
-
对java和mysql的询问
-
平时爱读什么技术书?
-
平时爱不爱玩游戏,对做游戏抵触不抵触?
-
自我介绍
-
介绍项目以及项目遇到的难点
-
java的hashmap是否安全?hashmap、hashtable、concurrenthashmap的区别、底层和实现
-
mysql索引的底层实现
-
jvm垃圾回收机制
-
tcp、udp区别和适用场景
-
tcp三次握手、四次挥手,为什么挥手不能只有三次
-
线程和进程的区别
-
进程通信的方式有哪些
-
堆是线程共有还是私有,堆是进程共有还是私有,栈呢
-
了解过协程吗(我:协程???不了解呜呜呜)
-
mysql查询优化
-
快速排序的时间复杂度、原理(口述算法)
-
最近在看什么书
-
除了腾讯还投了其他的公司吗
-
问我愿不愿意转go,并推荐我了解一下协程,最后让我耐心等待,面试的人太多,需要对面试的同学进行挑选,两周内会告知我结果
-
有什么想问的(对我的评价和学习建议)
-
自我介绍
-
问我为什么发现自己不喜欢做客户端(简历中有一个安卓实习项目)而想做后台
-
介绍项目(一个电商小程序)
-
项目中的商品是否有考虑过xxx(忘记叫什么了,意思就是是否有考虑过同一种商品有不同的颜色、规格,在数据库中如何区分这些不同)
-
介绍项目的支付流程,并画一下流程(白板)
-
介绍一下订单状态码的含义,以及交易过程中订单状态码如何变化
-
如何防止商品的超卖现象
-
项目是否具有秒杀功能
-
并发的时候,如何保证性能
-
在分库之后,如何设计id
-
在分库后,一条插入请求,在上层不做处理,如何直接在数据库找到相应的库并插入库中的某个表
-
当服务器的cpu一直很高时,如何找出原因
-
是否用过调试工具
-
当项目一直无法访问的时候,如何定位错误
-
介绍一下aop和ioc
-
如何将一个ip地址由点分制(xxx.xxx.xxx.xxx)和int类型间进行相互转化
-
如何判断一个数是否为2的n次方
-
可实习时间
-
是否愿意转go
-
有什么想问的(对我的评价和学习建议)
转载:https://blog.csdn.net/qq_34149581/article/details/104887196