mirror of
https://github.com/huihut/interview.git
synced 2024-03-22 13:10:48 +08:00
📚 C/C++ 技术面试基础知识总结,包括语言、程序库、数据结构、算法、系统、网络、链接装载库等知识及面试经验、招聘、内推等信息。
algorithmccppdata-structuresdatabaseinterviewinterview-practiceinterview-preparationinterview-questionsinterviewsleetcodeoperating-systemstl
.vscode | ||
Algorithm | ||
Problems | ||
README.md |
目录
C/C++
- 封装
- 继承
- 多态
- 虚函数
- 内存分配和管理
- extern"C"
- const作用
- 什么是面向对象(OOP)
- new和malloc的区别
- 运行时类型识别(RTTI)
- 友元类和友元函数
- struct和class的区别
STL
数据结构
算法
排序
查找
Problems
Single Problem
Leetcode Problems
Array
- 1. Two Sum
- 4. Median of Two Sorted Arrays
- 11. Container With Most Water
- 53. Maximum Subarray
- 121. Best Time to Buy and Sell Stock
- 169. Majority Element
- 283. Move Zeroes
操作系统
- 进程间的通信方式(管道、有名管道、信号、共享内存、消息队列、信号量、套接字、文件)
计算机网络
- TCP/IP
- TCP协议
- TCP三次握手
- TCP和UDP的区别
- socket套接字
- HTTP返回码
HTTP
HTTP 请求方法
- GET:请求指定的页面信息,并返回实体主体
- HEAD:类似于get请求,只不过返回的响应中没有具体的内容,用于获取报头
- POST:向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST请求可能会导致新的资源的建立和/或已有资源的修改。
- PUT:从客户端向服务器传送的数据取代指定的文档的内容。
- DELETE:请求服务器删除指定的页面
- CONNECT:HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器
- OPTIONS:允许客户端查看服务器的性能
- TRACE:回显服务器收到的请求,主要用于测试或诊断
HTTP 状态码
- 200 OK: 请求成功
- 301 Moved Permanently: 永久移动。请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替
- 400 Bad Request: 客户端请求的语法错误,服务器无法理解
- 401 Unauthorized: 请求要求用户的身份认证
- 403 Forbidden: 服务器理解请求客户端的请求,但是拒绝执行此请求
- 404 Not Found: 服务器无法根据客户端的请求找到资源(网页)。通过此代码,网站设计人员可设置"您所请求的资源无法找到"的个性页面
- 408 Request Timeout: 服务器等待客户端发送的请求时间过长,超时
- 500 Internal Server Error: 服务器内部错误,无法完成请求
- 503 Service Unavailable: 由于超载或系统维护,服务器暂时的无法处理客户端的请求。延时的长度可包含在服务器的Retry-After头信息中
- 504 Gateway Timeout: 充当网关或代理的服务器,未及时从远端服务器获取请求
数据库
- 数据库事务四大特性:原子性、一致性、分离性、持久性
- 数据库索引:顺序索引 B+树索引 hash索引 MySQL索引背后的数据结构及算法原理
设计模式
网络编程
海量数据处理
其他
书籍
- 《剑指Offer》
- 《编程珠玑》
- 《深度探索C++对象模型》
- 《Effective C++》
- 《More Effective C++》
- 《深入理解C++11》
- 《STL源码剖析》
- 《深入理解计算机系统》
- 《TCP/IP网络编程》
- 《程序员的自我修养》