前言
如果你今天还在问我“程序员为什么需要深度学习?”,那么这只是意味着你对开发的兴趣并不高,你对编程的热情并不够,你对自己的职业发展也没有一个清晰的规划。
作为开发人员来说,不说要求自己成为业内顶尖,但也要保证自己不被市场所淘汰,学习对于程序员来说是最基本的事情。
字节一面:
一面电话面试,基本常见问题,50min 一直问问题
1.堆排序
2.快速排序
3.单向链表 如何快速得到长度
4.浏览器请求的过程
5.HTTP 无状态
6.1.1 和 1.0 区别
7 讲一下 https
8.抓包 工具 能否看到 ack 和状态码
9.网络编程讲一下 socket 同步通信 异步通信 select poll epoll
10.不同语言之前通讯方式(跨语言通信方案) C 和 Java 之间
11.长短连接实现
12.sychronized 静态方法和不同方法的区别
13.死锁线程的方法 互斥资源
14.线程状态
主线程能拿到子线程的执行结果和异常吗
15.常见的集合类 线程安全
16.自旋锁和互斥锁区别
17.哈希冲突解决方法
18.JVM 内存模型
19.链表和数组的区别
20.数据库 聚集索引和非聚集索引区别
21.一条 sql 语句是怎么执行的
22.隔离级别 一般使用哪种 存在哪些问题
23.数据库 单体部署吗?集群有哪些问?主从复制的问题? 数据不一致怎
么解决??
24.中间件有用过吗 Z