-
首先问项目
-
HashSet 讲一下?
-
HTTPS 加密过程讲一下?
-
进程和线程的地址空间有什么不同?
-
进程同步的方式有哪些?
-
浏览器输入 URL,敲回车后具体发生了些什么事情?
-
HTTP 状态码 3XX 大概和什么有关?304 是什么?
-
MySQL 有几种事务隔离级别?分别都解决了什么问题?
-
幻读是什么?MySQL 是怎么解决幻读的?
-
MySQL 索引是什么?底层用的什么数据结构?为什么?
-
简单 SQL 题:给定一个表 user(id, name, city),id 是自增长的主键,name 是用户名,city 是用户所在的城市,求:
-
城市的数量
-
人数最多的前 3 个城市
-
-
针对上面 SQL 语句的几个问题:
-
distinct 和 group by 在效率上的区别
-
count(*) 和 count(name) 在效率上的区别 (从索引的角度思考)
-
-
代码题:买股票的最佳时机 (只能买入卖出一次) ,(leetcode 121)
- 代码题:买股票的最佳时机(2) (可以买入卖出无限次,但是必须在卖出后才能再买入), (leetcode 122)
-
代码题:给定一个数组,使用两个线程依次交替打印数组中的元素
-
代码题:给定一个正方形二维数组,从左上角第一个元素开始,逆时针螺旋打印二维数组中所有的元素 (类似 leetcode 剑指 offer 29)
-
代码题:用 rand(5) 实现 rand(9), (类似 leetcode 470)
-
HTTPS 的加密过程?
-
智力题:共有 64 匹马,有 8 条赛道,也就是每次最多可以用 8 匹马进行一次比赛。若要选出 64 匹中最快的 4 匹,至少要比赛几次 (不能使用计时器)?
-
场景题:某个用户可以关注其他用户,某用户也可以被其他用户关注,请问在 MySQL 中如何设计表结构来存储这些关注和被关注信息?需求是可以查询出某用户的所有关注以及所有粉丝?(不同用户可以用唯一的 uid 来标识)
-
设计完上面的表结构后,应该如何建立索引?
-
MySQL 的组合索引在 B+ 树中是怎么存储的?
- MySQL 的组合索引中,在前一个字段确定的情况下,后一个字段是排好序的,请问这个排序是在 B+ 树的中间节点确定的,还是在叶子节点中才能确定呢?
这一轮几乎把 Java 基础,操作系统基础,网络基础问了一个遍,几乎都是些只要看过背过就会的题,也没有深入问细节或者原因。
然后是代码题:给一个升序数组,找出两个数字相加等于 target 的个数。几乎就是 leetcode 两数之和的改编版。我写出来了,然后面试官叫我优化,我没有想出优化办法。最终的优化办法应该是双指针,这一点我确实没有想到。
世界上只有一种真正的英雄主义,就是认清了生活的真相后还依然热爱它。
全部评论
(15) 回帖