面试复习重点——数据结构、操作系统、计算机网络、数据库

必看书籍:剑指offer程序员面试宝典

来自:腾讯、搜狐、网易、烽火、百度、大众点评、美团、风行


1. 死锁是什么?什么情况下产生?怎么解决?

2. 设计模式(尤其是单例模式,要会写该模式的程序框架,要注意同步问题,怎么实现在要用时才创建)

3. 线程的同步?为什么要同步?线程间通信方式。

4. 进程与线程的区别,进程间通信方式。

5. 容器类:hashmaphashtable的区别,arraylistlinkedlist的区别

6. 为什么要用多线程,实现多线程的两种方式,有什么区别?

7. JNI接口,C++extern C的作用

8. C的内存分配,C中堆的内存分配

扫描二维码关注公众号,回复: 3997882 查看本文章

9. 指针:int (*s[10])(int)解释其含义(课本上有)

10. Volatile的作用:保存特殊地址的稳定访问,直接从内存中读值(而不是寄存器:编译器优化后的结果,即访问频度高的变量会先存放在寄存器中,以便提高效率)

11. TCPUDP的区别,为什么说TCP能提供可靠数据传输?

12. TCP三次握手和四次挥手,为什么要三次和四次?

13. httpsocket区别

14. 内部类,静态内部类和非静态内部类的区别

15. 指针和引用的区别

16. 内存优化

17. 数据库:索引的优缺点,什么是事务,事务的特性

18. 数据结构:

1) 排序算法(时间复杂度、空间复杂度、稳定性、会讲思路、写代码)

2) 二叉树,遍历方式,通过二叉树的先序遍历和中序遍历,得到其后序遍历(思路+程序)

3) 链表:单链表和双链表,链表逆序输出

19. 对象锁和类锁

20. TCP中怎么保证数据无差错传输的,校验和是怎么得到的?

21. 什么时候会使用TCP,什么时候使用UDP?(结合应用层的一些协议)

22. 深拷贝与浅拷贝

23. 异常处理

24. 数组指针与指针数组

25. 什么是重载,什么是重写,二者区别

26. 哈希表和哈希函数

27. ARP的作用,为什么要用ARP

28. 网络层ICMP,其应用:tracerouteping

29. TCP的拥塞控制方式、流量控制方式

1、 你经常逛的论坛,国外的网站,开源代码网站


一:操作系统


1. 进程的有哪几种状态,状态转换图,及导致转换的事件。

2. 进程与线程的区别。

3. 进程通信的几种方式。

4. 线程同步几种方式。(一定要会写生产者、消费者问题,完全消化理解)

5. 线程的实现方式. (也就是用户线程与内核线程的区别)

6. 用户态和核心态的区别。

7. 用户栈和内核栈的区别。

8. 内存池、进程池、线程池。(c++程序员必须掌握)

9. 死锁的概念,导致死锁的原因.

10. 导致死锁的四个必要条件。

11. 处理死锁的四个方式。

12. 预防死锁的方法、避免死锁的方法。

13. 进程调度算法。

14. Windows内存管理的方式(块式、页式、段式、段页式).

15. 内存连续分配方式采用的几种算法及各自优劣。

16. 动态链接及静态链接.

17. 基本分页、请求分页储存管理方式。

18. 基本分段、请求分段储存管理方式。

19. 分段分页方式的比较各自优缺点。

20. 几种页面置换算法,会算所需换页数。(LRU用程序如何实现?)

21. 虚拟内存的定义及实现方式。

22. 操作系统的四个特性。

23. DMA

24. Spooling

25. 外存分配的几种方式,及各种优劣。


二:计算机网络


1. 电路交换与分组交换的区别? 优劣对比。

2. OSI有哪几层,会画出来,知道主要几层的各自作用。

3. TCP/IP有哪几层,会画出来,知道所有层数的作用,会列举各层主要的协议名称。

4. 硬件(MAC)地址的概念及作用。

5. ARP协议的用途 及算法、在哪一层上会使用arp 

6. CRC冗余校验算法,反码和检验算法。

7. 如何实现透明传输。

8. 知道各个层使用的是哪个数据交换设备。(交换机、路由器、网关)

9. 路由表的内容。

10. 分组转发算法。

11. IP报文的格式,格式的各个字段的含义要理解。

12. MTU的概念,啥叫路径MTU? MTU发现机制,TraceRoute(了解)

13. RIP协议的概念 及算法。

14. ICMP协议的主要功能。

15. 组播和多播的概念,IGMP的用途。

16. Ping协议的实现原理,ping 命令格式。

17. 子网划分的概念,子网掩码。

18. IP地址的分类,如何划分的,及会计算各类地址支持的主机数。

19. DNS的概念,用途,DNS查询的实现算法。

20. TCPUDP的概念,相互的区别及优劣。

21. UDP报文的格式,字段的意义。

22. TCP 报文的格式,字段的意义。

23. TCP通过哪些措施,保证传输可靠?

24. 三次握手,四次断开过程。

25. TIME_WAIT状态的概念及意义。

26. 滑动窗口协议 与 停止等待协议的区别。

27. TCP的流量控制和拥塞控制实现原理(会画拥塞控制的典型图)

28. TCP的快速重传与快速恢复算法。

29. TFTP 与 FTP的区别。

30. 阻塞方式和非阻塞方式,阻塞connect与非阻塞connect(比较难,有兴趣可以了解)

31. HTTP基本格式。(java程序员必须掌握)


三:设计模式


1. 各种常用模式的用途,使用方法。

2. 单例模式的双重检查实现。

3. MVC模式


继续更新中。。。


一:操作系统


1. 进程的有哪几种状态,状态转换图,及导致转换的事件。

2. 进程与线程的区别。

3. 进程通信的几种方式。

4. 线程同步几种方式。(一定要会写生产者、消费者问题,完全消化理解)

5. 线程的实现方式. (也就是用户线程与内核线程的区别)

6. 用户态和核心态的区别。

7. 用户栈和内核栈的区别。

8. 内存池、进程池、线程池。(c++程序员必须掌握)

9. 死锁的概念,导致死锁的原因.

10. 导致死锁的四个必要条件。

11. 处理死锁的四个方式。

12. 预防死锁的方法、避免死锁的方法。

13. 进程调度算法。

14. Windows内存管理的方式(块式、页式、段式、段页式).

15. 内存连续分配方式采用的几种算法及各自优劣。

16. 动态链接及静态链接.

17. 基本分页、请求分页储存管理方式。

18. 基本分段、请求分段储存管理方式。

19. 分段分页方式的比较各自优缺点。

20. 几种页面置换算法,会算所需换页数。(LRU用程序如何实现?)

21. 虚拟内存的定义及实现方式。

22. 操作系统的四个特性。

23. DMA

24. Spooling

25. 外存分配的几种方式,及各种优劣。


二:计算机网络


1. 电路交换与分组交换的区别? 优劣对比。

2. OSI有哪几层,会画出来,知道主要几层的各自作用。

3. TCP/IP有哪几层,会画出来,知道所有层数的作用,会列举各层主要的协议名称。

4. 硬件(MAC)地址的概念及作用。

5. ARP协议的用途 及算法、在哪一层上会使用arp 

6. CRC冗余校验算法,反码和检验算法。

7. 如何实现透明传输。

8. 知道各个层使用的是哪个数据交换设备。(交换机、路由器、网关)

9. 路由表的内容。

10. 分组转发算法。

11. IP报文的格式,格式的各个字段的含义要理解。

12. MTU的概念,啥叫路径MTU? MTU发现机制,TraceRoute(了解)

13. RIP协议的概念 及算法。

14. ICMP协议的主要功能。

15. 组播和多播的概念,IGMP的用途。

16. Ping协议的实现原理,ping 命令格式。

17. 子网划分的概念,子网掩码。

18. IP地址的分类,如何划分的,及会计算各类地址支持的主机数。

19. DNS的概念,用途,DNS查询的实现算法。

20. TCPUDP的概念,相互的区别及优劣。

21. UDP报文的格式,字段的意义。

22. TCP 报文的格式,字段的意义。

23. TCP通过哪些措施,保证传输可靠?

24. 三次握手,四次断开过程。

25. TIME_WAIT状态的概念及意义。

26. 滑动窗口协议 与 停止等待协议的区别。

27. TCP的流量控制和拥塞控制实现原理(会画拥塞控制的典型图)

28. TCP的快速重传与快速恢复算法。

29. TFTP 与 FTP的区别。

30. 阻塞方式和非阻塞方式,阻塞connect与非阻塞connect(比较难,有兴趣可以了解)

31. HTTP基本格式。(java程序员必须掌握)


三:设计模式


1. 各种常用模式的用途,使用方法。

2. 单例模式的双重检查实现。

3. MVC模式


继续更新中。。。

猜你喜欢

转载自blog.csdn.net/guhong888/article/details/82868763
今日推荐