昨天面了腾讯软件工程-数开实习的三面,下面记录一下问题:
1.自我介绍,有无实习经历(无),做的两个项目是自己练手的?(是)
2.描述了一个场景,有一张员工表,有姓名、年龄、性别,求出所有姓张、年龄小于20的所有女性。口头作答
3.刚才你说的这个sql怎么优化?(添加索引、联合索引)
4.添加索引有什么副作用?(会占用空间)
5.假设表的内容越来越多,比如上千万行,怎么优化表?(分区、缓存)
6.怎么缓存到内存?(用redis这种内存数据库)
7.内存数据库和非内存数据库的读写差异?(内存数据库读写可以在微妙完成,非内存数据库的读取速度取决于磁盘I/O性能和数据量大小)
8.为什么非内存数据库就比较慢(因为存储介质比较慢)
9.什么硬盘比较快?(固态硬盘)
10.固态硬盘和机械硬盘读写差异有多大(由于固态硬盘使用闪存存储数据,它们具有非常快的读取速度,机械硬盘使用旋转的磁盘和读写头来存储和访问数据,比较慢)
11.毫秒级别是什么场景?(操作系统的数据加载、固态硬盘的读写)
12.SSD的缺点是什么?(价格贵,容易老化,数据丢失)
13.为什么SSD会随着使用时间的增加而性能下降?(写入操作会导致存储单元的磨损,温度也会使性能下降)
14.假设表很大,行怎么拆分?(可以考虑用时间分区)
15.除了日期,还有什么可以水平拆?(地理位置、实体属性、业务流程)
16.年龄性别怎么分?(年龄按年龄段分,性别按男女分)
17.怎么评价划分好坏?(属性的区分度要好,分区后的数据尽量要均衡)
18.有什么好的分法?
19.如果从中国所有人里面搜索,怎么样可以快一点?(按省市区县分区)
20.按地域划分的缺点?(分区后数据可能不均衡,比如深圳是千万级城市)
21.python跟c++和java的区别是什么?
22.linux查看系统资源,cpu怎么看?
23.top看到的ioswap是什么原因?
24.怎么解决io等待?
25.磁盘上部署大量的 I/O 密集型任务,怎么均衡?
26.公平调度是什么?
27.有什么不公平的方法?
28.爬泰山有10000级台阶,每一次只能走1,2,3步,怎么做?(用动态规划)
29.这个动态规划的优点和缺点?
30.这个动态规划代码的缺点怎么优化?
31.自顶向下的记忆化搜索,怎么避免重复计算?
32.最擅长的技术
今天看到3面过啦!希望hr面顺利