来源与网易、网易互娱、360、头条、商汤等公司面试真题,整理自牛客网。
自我介绍
- 项目中负责什么?
- 团队几个人?合作情况
- 为什么要读研
项目/实习介绍
- 项目中负责什么?
- 团队几个人?合作情况
- 项目的方法怎么改进,和别人方法相比的优缺点
- 项目收获
计算机网络
- tcp、udp属于哪层,区别,应用
- 你知道的什么软件是用tcp协议什么软件是用UDP协议
- TCP三次握手四次挥手的过程及状态, 三次握手?两次会怎样? 四次挥手?3次会怎样?TIME_WAIT出现在哪 为什么要有TIME_WAIT
- http状态码 了解https嘛?说一说原理,http请求,ARP请求
- http和https的区别 https的加密方式
- get,post区别
- cookie,session区别,应用场景
- OSI七层模型
- arp攻击
- 如何修改自己的mac地址
- 开机启动操作系统做了哪些事情
- 消息队列接口参数是什么
- 网页没有正确显示原因是什么
- 浏览器发送的超文本都有哪些文件
- 浏览器请求,浏览器输入一个连接,到展示到页面,经过了什么
Linux命令
- 查看进程/查询进程状态,查看当前哪些进程占用了8080端口
- 查看一个端口的占用情况,并杀死占用的进程
- Linux下查看进程会ps,netstate,lsof,top说了一堆。
- 统计字符串出现次数
- 查找
- 新建文件
- 查看文件
- 修改文件
- 插入
- 跳转到某一行
- 替换
- JMM
- JC
- Linux熟悉哪些指令。(设计加具体参数表示什么意思) ls,du,df,grep,cd -
- linux指令(for循环输出1-100)
- 给出很多串信息 包含ip url info 等信息 info包含error等状态码 用Linux命令统计出每个url对应的error概率(属实不会 连问题都没太能记得清 自闭了)
windows
windowns下如何查看进程
数据库与SQL
- SQL使用having
- 数据库外键
- 创建索引、索引的分类
- 索引的作用,索引何时无效
- 索引和存储过程
- 数据库增删查改
- Drop和Delete的区别
- MYSQL关系型和非关系的有什么区别
- MYSQL 查询语句 where 两张表的连接 降序排序 MySQL熟悉哪些函数
- MYSQL索引作用是什么,建立索引的原则,索引失效,索引建的越多越好吗,索引的底层结构
手写SQL
- 建立一个表,id,name,id自增长,且为主键
在原来的表上增加一列,创建时间列,并获取当前系统时间
找出创建时间在某个时间范围以内,并按照创建时间降序排列
在原来的表上增加一百条数据,名字字段每条后边加个0,比如第一个是name,下边是name0,name00…(不会,求大神告知) - 从一张用户信息表中统计出年龄最大的10个人(limit+order by)
- 三门课总成绩大于85的学生
- 数据库里面选出语文最高分
C++/Java/Python
C++
- 面向对象的三大特性,怎么解释?
- 对类的理解
- 对多态的理解,动态和静态,编译时多态和运行时多态
- C++的内存管理,堆,栈,自由存储区,静态存储区
- STL的核心以及vector的实现(内存扩展)
- struct和class的区别
- 重写与重载,function不想被重写, 怎么办?
- 函数参数怎么入栈?为什么会这样?
- 并行(多线程,多进程,强行介绍mmap,volatile)
- 线程与进程,进程和线程的区别,线程之间共享数据的方式
- 什么时候使用多线程,什么时候使用多进程?那如果有很多任务,创建线程越多越好吗?那有没有优化的方式呢?很多线程任务,怎么解决呢
- 进程调度有哪些常用的算法
- 进程状态了解吗?
- 进程同步方式
- 你如何保证线程安全?(答:乐观锁,悲观锁) 用代码实现了一个你上述说的锁?(不是底层,怎么用volitale和Synchronized就行,当时就捡了个简单的写)
- 死锁是啥,死锁产生的条件是什么
- 临界区是啥
- 空指针,野指针(两个指针的区别)
Python
- python的一些高级特性,知不知道设计模式啊。
- Python数据结构讲下,元组和列表的区别
- Python中可变与不可变
Java
- 查询线程使用情况
- 查询虚拟机使用情况
- Tomcat了解吗?使用Tomcat遇到的问题
- 重写与重载
- Java线程池的了解情况
- thread的run和start
- Spring框架知道多少,说一说
- 说说一个页面是怎么传到用户面前的,着重说说spring的处理方式
- 知道Java类吗,里面可以类套类吗,有这么写过吗?
- Java里的权限
- 垃圾回收算法
- 熟悉Java的哪些数据结构==>Arraylist是数组还是链表==>为什么是可变长度
- java中单例模式和静态类的关系
还会什么语言
14. shell脚本 awk切割文件 sed替换 改名字
15. C:log.txt,查找文件中‘ABCD’出现的次数. cat log.txt | grep -o ‘ABCD’|wc -l C语言实现会写吗?
数据结构
- 数据结构会哪些?
- 单链表是怎么回事?我要是查中间的一个节点怎么查?
- hashmap是不是线程安全的?为什么不是?
- HashMap原理
- String stringbuffer stringbuilder
- String是可变的吗,说说底层源码,为什么是不可变的
- 那你说说B树,B树和B+树有什么区别
编程题
- 合并两个有序数组
- 最大连续子数组和
- 字符串中相同字符的子串长度的最大值
- 字符串转换为整数
- 不用加减乘除实现加法
- 读一个文件 找出出现次数最多的字符串
- 找出一个字符串的最长不重复子串
- 给定一个字符串,确定:其中一个字符串的字符重新排列后,能否变成另一个字符串
能否优化,如果再插入一个字符如何找到它(?),时间复杂度是多少 - 一次只能跳一个台阶或者两个台阶,100级台阶有几种跳法?
- 100层楼扔鸡蛋,给你两个鸡蛋如何测量鸡蛋破碎的临界条件?
- 一个目标数,一个数组,检查有没有两个数相加等于目标数
- 判断合法ip
- 建立单向链表
- 判断循环链表
- 怎么判断链表有环,怎么找到环入口
- 怎么判断链表是否相交,找到相交点
- 排序算法知道哪些?手写选择排序。
- 快速排序,思想、代码、时间复杂度
- 冒泡算法的时间复杂度
- 写个斐波那契数列1,1,2,3,5,返回第100个数?
- 求101~200之间素数的个数 ,求前n个数之间素数的个数
- 树的前序遍历/中序遍历/后序遍历
- 输出二叉树从左侧看的结果
- 判断二叉树是否为avl树
- 五张牌判断是否是顺子
- 某人岁数的3次方是四位数,4次方是六位数,且知此人岁数的3次方和4次方用遍了0~9十个数字。编写一个程序求此人的岁数。(从四位数和六位数入手,限定范围,四位数的范围是10-21,六位数的范围是18-31,求交集,剩下的再一个个比)
- 幸运数
- 对于一个n份文件,想放入k个包,n除不尽k,要使得每个包中存放的文件个数均匀,写个程序
智力题
- 一个国家的生育政策是如果生了女孩,那么不再生孩子;如果生了男孩,接着生孩子,直到生了女孩则不再生孩子。生男孩和女孩的概率 (都是50%)
- 有两个一样大的颜料桶,一个红色颜料桶,一个蓝色颜料桶。首先从蓝色颜料桶舀出一杯,倒入红色颜料桶,搅拌均匀后,再从红色颜料桶舀出一杯,倒入蓝色颜料桶,搅拌均匀。问两个桶中的蓝色和红色颜料的比例哪个更高?
- 9个球称3次找到质量不一样的那个假球
- 20层楼3个电梯,早晨上班人多,问怎么安排电梯
- 一块黄金,7天的结算工资,但是只能切割四次,怎么每天结算工人工资(好傻,当时没想出来)切金条 7=1+2+4
- 有个无限水的池子,有两个桶,一个是5升,一个是6升,最后怎么打出来3升水。
- 9个点,3*3排列,一笔画完四条线把9个点穿起来。
- 向南向东向北走回到原点是什么地方?
- 如果所有人都长高一米,世界会怎么样
- 三个酒杯,容量分别是8,8,3,现在两个大酒杯装满了酒,如何平均分给4个人喝
- 某段公路上1小时有车通过的概率是0.96,半小时有车通过的概率是多少
测试相关知识
- 谈谈对测试的理解吗,为什么做测试
- 用过那些测试工具,用过哪些测试辅助工具
- 测试方法,黑白盒测试用例方法,白盒测试和单元测试
- 了解测开工程师在整个产品从立项到最后上线都参与了那些过程
- 测试一个接口,写测试用例,并归类
- 测试微信红包功能
- 讲一下微信支付的完整流程,从产品开发的角度去想
- 有哪些可能导致支付宝付款二维码被盗刷
- 如何测试一支笔
- 如何测试cp命令
- 写了一个qq发送文件的测试用例
- 抖音的上划功能 如何设计测试
- 百度页面测试用咧
- 为什么要做浏览器兼容性测试
- 一款游戏有二十来个玩家连接不到游戏服务器,但是本地网络没问题,你觉得哪里出了问题
- 游戏上线一个新角色,需要测试什么,主要有哪些方面的测试
- 第N天要交付游戏,第N-3天理应开始测试,但N-1天才交付代码,你准备怎么测?如果给你分配人,你应该怎么安排测试。测试具体是怎么测。测试时间太紧,出BUG了,怎么办,开发甩锅怎么办。怎么弥补双方关系。(面试官补充,基本不会出现这种情况)
- 设计测试用例,一个客户端登录页面,用户名,密码,登录三个按钮.尽可能详细的说出
10.软件卡怎么办
游戏相关
- 谈谈你的游戏经历
- 如果让你负责一款你不太喜欢的游戏,你有什么看法
- 如何设计游戏中的朋友圈,尽量从技术角度说下,而不仅仅是说有哪些功能。
- 玩过的游戏,自己的专业和游戏的联系在哪里,从自己的专业出发,该如何测试一款游戏,比如王者荣耀
- 玩过的游戏,2048游戏的最大值是多少
- 看游戏上的理解。例如刺激战场这类大逃杀游戏和其余游戏的不同点是哪些,这类游戏为什么能火起来
- 第五人格的新手任务如果你来设计会怎么设计(因为当时说第五人格的新手任务很长,但是结合游戏进程的这种设计比较新颖
- 怎么提取游戏用户的特征,怎样对海量的用户划分(感觉是考察思维的逻辑性,缜密度?)
- 对游戏行业发展的看法
- 个人的游戏经历和游戏量