文章目录

写在前面

这个公司估计是走个形式…

笔试

一面

TCP 和 UDP 区别

TCP 是可靠传输,面向连接,基于流,占用资源多,效率低。

UDP是尽最大努力交付,基于无连接,基于报文,UDP 占用系统资源较少,效率高。

UDP能可靠传输吗?

可以的,我们只需要仿照TCP的可靠传输机制就可以了,比如说设置ACK确认机制,一旦没有收到,或是收到三次上一个报文的ACK,我们就立即重传丢失的报文。再比如说设置滑动窗口来保证数据传输的安全性等等…

MYSQL的隔离等级

​READ UNCOMMITTED​​如果用户在另外一个事务中执行同条 SELECT 语句数次,结果总是相同的。​​这种隔离级别提供了事务之间最大限度的隔离。​

左连接,右连接有什么区别?

​只要左边表中有记录,数据就能检索出来​
​A LEFT JOIN B​​A INNER JOIN B​

左连接是已左边表中的数据为基准,若左表有数据右表没有数据,则显示左表中的数据右表中的数据显示为空。右联接是左向外联接的反向联接,将返回右表的所有行。如果右表的某行在左表中没有匹配行,则将为左表返回空值。

JOIN的性能一定好吗?

  1. 小表在前可以提高sql执行效率。
  2. 尽量不要使用where语句。

从上面例子可以看出,尽可能满足ON的条件,而少用Where的条件。从执行性能来看第二个显然更加省时。

​主从表​

线程的通信方式?

消息队列、内存共享、信号

快排原理?堆排呢?

​数组的拆分​
​将待排序序列构造成一个大顶堆​

算法:top k 问题

估计是不招人了,一面后一点消息也没有。。。