近期面试总结

最近面试了好几家互联网公司,我面试中还是有许多问题与不足,前面先把问题和自己当时的回答做一个记录,有些问题回答的可能不好甚至不对,文章后面会对这些问题进行查阅总结,讲答案写上,方便后面学习。

python开放方面:

1、先自我介绍

2、你说你是智能科学与技术专业的说说你的专业课?

博主因为是一个双非的普通一本本科,平时上课也不太认真听讲,因此对于一些课程,比如数据处理技术、模式识别、智能优化算法、机器学习、数据挖掘等一些热门课程,自己不是特别会,因此面试时都是避开这些课程回答,以后有机会好好学习吧。

3、我看你学过C/C++/python这几门语言,你觉得这几门语言最大的区别是什么?

答:C 语言是一门面向过程的语言、而C++是在C的基础上进行了一些优化和改变、成为一门面向对象的语言,而且C++支持C的语法和C的内存模型,C/C++是一门编译型语言、在编译时分为四个步骤:预处理、编译、汇编、连接的过程(gcc命令),运行速度快。

Python是一个解释型语言,脚本语言、而且Python语法没有C/C++那么难,Python因为模块比较多,因此实现大多数的功能比方便。

顺便在提一下两个语言的内存模型的差别就ok

4、我看你用过Flask和Django网络开发框架,能说一说你的掌握程度吗?(自我感觉这个题好难回答。。后来自己想想,还是自己掌握不够)

答:因为自己平时一些web服务时大多数都用的是Flask,Django用的偏少。

5、你也用过Flask框架,那么如果让你去实现一个类似Flask框架的网路后台框架、你觉得你应该实现什么功能?

答:首先python服务端和客户端进行通信时,有一个不成文的协议WSGI,我们需要在设计接口的时候遵循这个接口协议

然后实现通过三次握手,建立服务端与客户端的TCP连接,接下来去使用TCP连接完成http协议。

6、你用过MySQL,大概在什么程度?(又是这类问题。。。。)

答:增删改查。。。。。。。。。。。。

7、你了解数据库的索引吗?什么时候会使用到数据库的索引?

答:主键索引、唯一索引、普通索引、全文索引、组合索引。

8、你学过数据结构,那么你给我讲讲快速排序。

答:从平均情况、最好的情况和最坏的情况下的时间复杂度以及辅助空间的时间复杂度、是否稳定、以及实现思路来讲的。

9、你做过过一个微电影视频网站、一个电影可能有多个分类,比如爱奇艺网站上有1000万部电影、你觉得是用什么算法通过电影标签去搜索电影的。

答:............

10、当你输入了一个url,你觉得浏览器做了哪些工作?(这个问题刚好看过,所以回答的自我觉得不错)

答:首先进行DNS域名解析->发起TCP的3次握手->通过TCP连接的建立发起http请求->服务器对http请求进行响应,浏览器得到html代码->浏览器解析html代码,并请求html中的资源(js、css、图片等)->浏览器对页面进行渲染。

11、如何理解http和tcp的关系

答:http属于应用层,tcp属于传输层、本质上讲两者没有可比较性,http协议是建立在TCP协议基础之上的、当浏览器从服务器获取资源时、http需要将通过建立一个TCP连接到服务器,将请求发送给服务器,并通过tcp获取到资源,http会将tcp连接断开。

C/C++

1、C++里面的map的实现用到的数据结构能说下一吗?

答:红黑树 

2、C/C++的内存模型

答:内存四区方面来讲、什么变量会存在于栈、什么会存在静态区(全局区)、什么变量会在堆区

3、多态的实现原理

答:当编译器检测到类的方法有virtual 关键字时,在使用该类定义一个对象时,编译器会对该对象增加四个字节的内存,用来存放一个VPTR指针,该指针会指向该类对应的虚函数表,在我们使用类的继承兼容性原则的父类指针指向子类对象时,C++编译器不需要判断这个指针指向的对象到底是父类对象还是子类对象,只需要查该对象的VPTR指针指向的虚函数表即可。

4、C/C++的内联函数

答:c++的内联函数会将函数体会由编译器控制在函数存在的地方进行展开,没有像普通函数调用那样的压栈、等额外开销,提高变异速度。不过内联函数不能使用循环语句和开关控制语句。

5、TCP三次握手

答:这个回答的太多了,这里就不写了

6、写一个算法实现一个26进制转10进制?

7、我看你上面实现算法的时候用到到了一个幂函数,你能给我实现一个吗?

8、你觉得你觉得你实现的幂函数的时间复杂度是多少?你能把它降低到O(n)吗?

答:O(n2),不能(感觉这个回答好瓜皮哦)

9、说说你理解的窗口滑动协议?

 

测试开发:

1、实现一个算法:在一栋高层的楼中有三部电梯,实现一个三部电梯的调度算法、并且考虑下上下班高峰期的均衡负载。

2、写一个程序,实现一个字符串的翻转

3、写一个程序实现下面功能:在一个日志文件中的每一行都存在n>=0 个“ditu”的字符串,给我统计出该文件中所有该字符串出现的位置(行列号)

4、有一个数 num = k ,在一个数组中至少存在这样的一组数据(a[j]+a[i] == num) ,找到所有这样的数,按照每队放在一起给我输出。

5、你知道的反爬虫的手段?

6、说一下怎样防止数据库注入

7、你了解过搜索引擎吗?谈一谈(好绝望,完全不知道怎么回答)

9、现在有一款搜索引擎,你如何进行测试,你能保证你测试完后的引擎没有问题吗?

10、你未来1~2年内的职业规划是什么(哎!以前太年轻,总说自己过个1~2年会在公司内部申请调岗,人家部门把你培养出来,你倒好去了别的部门。。。因为这个挂了两个leader面)

 

总体来讲就晒上面这些问题,秋招刚开始,会持续更新,有些问题的答案,我也在学习,等后面会了再说吧,也不知道什么时候可以拿到offer,加油哦!!!

 

 

 

 

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值