手撕:给一个有序数组,元素可重复,通过二分查找得到目标数字的索引范围(因为元素可重复,所以是一个连续的范围)(给出迭代和非迭代的解法,注意边界条件)(要保证时间复杂度是O(logN),因为元素可重复,所以第一次二分查找后还需要将原本的数组分为左右两个数组继续二分查找【递归容易实现,迭代比较难】,或第一次二分查找得到索引后向索引左右暴力搜索【时间复杂度O(logN+M),最坏时间复杂度O(N)】)

手撕:MySQL,一亿条记录,获得第九千万到第九千万零一百的记录(分页优化)

MySQL的索引类型有哪些?联合索引有什么特点?MySQL索引失效的场景有哪些?

MySQL默认的隔离级别是啥?还有什么隔离级别?

MySQL的锁机制有啥?MySQL怎么加上悲观锁?(在SELECT语句的最后加上FOR UPDATE,FOR UPDATE锁)MySQL怎么加上乐观锁?MySQL中如何实现悲观锁和乐观锁?

MySQL用什么命令查看SQL语句执行时用的索引?(用explain命令)

MySQL怎么排查慢的SQL语句?(开启慢查询日志)慢查询日志什么时候会失效?慢查询日志中没记录的话还要排查哪些地方?

Redis的Zset的底层数据结构是啥(跳表),怎么用的?MySQL为什么用B+树不用跳表?

线程和进程的区别,除了系统分配资源最小单位外的其他区别,线程和进程自己独有的和共享的内存分别有哪些?

Linux查看线程和进程的命令,top只能查看进程吗?(ps和top加上参数后都能查看线程和进程)

Linux中top命令上5min、10min、15min显示的是啥?(是负载load)有啥用?

kill -9 PID和kill -15 PID的区别?

Linux中进程的五种状态?

介绍进程的Z状态(僵尸进程)、孤儿进程?

Linux(C++)内存管理,堆和栈的区别?堆和栈的增长方向?为什么相反?

TCP四次挥手,什么时候会进入TIME_WAIT状态?TIME_WAIT是在客户端还是在服务器,还是谁主动断开谁出现?(TIME_WAIT 是主动断开连接的一方会出现的,客户端和服务器都有可能出现)

TIME_WAIT要等多久(2MSL),有什么用?Linux中的MSL是多少?(MSL【最大报文段的生命期】默认是60秒)

服务器上的 TIME_WAIT 状态太多是什么情况引起的?(Nginx 作为反向代理时,大量的短链接,可能导致 Nginx 上的 TCP 连接处于 TIME_WAIT 状态)

服务器上的TIME_WAIT状态太多怎么解决?(服务器端一般设置:不允许「主动关闭连接」,服务器端允许 TIME_WAIT 状态的 socket 被重用,服务器端缩减 TIME_WAIT 时间)

HTTP 500状态码(服务器内部错误(Internal Server Error),是一个通用错误响应,当服务器在处理请求时遇到问题但无法具体说明问题所在时,会返回这个状态码。这意味着服务器遇到了意外情况,无法完成请求)

Nginx的反向代理和正向代理?Proxy模块命令?

Python装饰器用过哪些?

Python函数怎么输入可变参数?(*args【实际上是一个元组,包含所有传递给函数的位置参数】和**kwargs【实际上是一个字典,包含所有传递给函数的关键字参数】,可以结合使用)

Python装饰器、构造器、生成器、迭代器的区别?

对闭包的理解,为什么要用闭包?说一下闭包原理以及应用场景?

Python列表和元组的区别?