大厂面经答案参考
《AI未来星球》陪伴成长的人工智能社群,价值过万的各种内部资源及活动,限时特惠中,点击查看。
求职跳槽福利:为了便于大家求职、跳槽的准备,大白将45家大厂的面经,按照知识框架,整理成700多页的《人工智能算法岗江湖武林秘籍》,限时开放下载,点击查看下载。
1 面经汇总资料
第一节每个公司参考的资料,招聘岗位、面试流程,以及整理的心得,都不相同。
具体每个公司的面经内容,可以点击查看详情。
面经的答案参考,主要从第二节开始。
2 面经答案涉及基础知识点
2.1 图像处理基础
2.1.1 讲解相关原理
● 常见的图像降噪的方法?
● 常见的图像滤波的算法?
● 常见的图像增强的方法?
● 常用的边缘检测方法?
● 图像中常用的插值算法?
● Raw图像和Rgb图像的区别?
● 讲解下Hog特征的原理以及步骤?
2.1.2 手写算法代码
● 手写马赛克算法
● 手写高斯滤波算法
● 手写均值滤波算法
● 手写中值滤波算法
2.2 深度学习:CNN卷积神经网络方面
2.2.1 讲解相关原理
2.2.1.1 卷积方面
● 如何理解卷积?
● 1*1的卷积核的好处?
● 卷积核大小如何选择?比如1*3,3*1代替3*3的原理?
● depthwise卷积的原理?
● 反卷积和其他上采样的缺点?棋盘格现象产生的原因?
● 3D卷积和2D卷积的区别?
● 在CNN卷积核上进行dropout操作的流程?
● 反卷积/转置卷积的实现原理?
● 直接转置卷积和先上采样再卷积的区别?
● Dropout的原理?
2.2.1.2 池化方面
● CNN中池化的作用?
● 反向传播时,max-pooling怎么反向传播误差?
2.2.1.3 网络结构方面
● mobileNetv1、mobileNetv2网络结构的原理?
● shuffleNetv1、shuffleNetv2网络结构的原理?
● Alexnet网络结构的原理?
● Vgg网络结构的原理?
● Densenet网络结构的原理?
● Inceptionv1、v2、v3、Xception网络结构的原理?
● Resnetv1、Resnetv2网络结构的原理?
● unet网络结构的原理?为什么要下采样&上采样?
● 神经网络上添加Attention的方式?
● FPN网络结构的原理?
● ROI Pooling和ROI Align的区别?
● 图神经网络原理的理解?
2.2.1.4 其他方面
● 感受野的原理是什么?如何增加感受野?
● 权值共享的原理是什么?
● BN层的原理?是怎么实现的?
● BN层训练和测试时有什么不同点?(还包括dropout)
● CNN反向传播的细节?比如怎么过全连接层、池化层、卷积层?
● CNN中防止过拟合的方法?
● 梯度爆炸&梯度消失问题的原因?以及如何解决?
● 为什么CNN适用于图像类任务,其他领域适用吗?
2.2.2 数学计算
● 卷积层的参数量怎么计算?
● 卷积计算过程中的FLOPs?
● 卷积计算的公式什么?计算输出Feature Map的尺寸。
2.2.3 公式推导
● Max pooling如何梯度求导?
● BP神经网络反向传播推导流程?
2.2.4 手写算法代码
● 使用代码实现BP网络的前向传播和反向传播?
● 使用代码展示shuffleNet v2的网络结构?
2.2.5 softmax方面
● softmax多分类器的原理?和二分类器相比,有哪些不同?
● 写一下softmax的计算公式?
● 写一下softmax的损失函数?
2.3 深度学习:RNN递归神经网络方面
2.3.1 讲解相关原理
● RNN为什么会出现梯度消失/ 梯度爆炸的现象?
● RNN如何防止梯度爆炸?
● LSTM的原理?各个门的原理?计算流程?
● LSTM、GRU、传统RNN的区别?
● 隐马、CRF、RNN、LSTM的区别?
● BN和LN的区别,以及BN一般怎么用?
● LSTM中有没有用BN?
2.3.2 手绘网络原理
● 写一下LSTM的公式?
● 画一下GRU,并解释门的原理?
2.4 深度学习:CNN&RNN通用的问题
2.4.1 基础知识点
● 梯度消失、爆炸原因及其解决方法?
● Dropout的原理及作用?为什么可以抑制过拟合?
● 刚开始训练时,神经网络的权值如何初始化?有哪些方法?
● 如何解决网络模型不收敛的问题?
● 如何加快模型训练速度?
● 常用的normlization的方法?
● 讲一下Attention的原理?Self-attention的原理和公式?
【Attention参考答案】【Self-attention参考答案】
2.4.2 模型评价
● 解释下ROC、AUC、F1-Score、Map、PR曲线、Recall?
● 分类问题的指标是什么?准确度、召回率、PR曲线
● 网络广告中CPM、CPC、ROI的含义,计算方式?
2.5 传统机器学习方面
2.5.1 讲解相关原理
2.5.1.1 数据准备
① 数据采集&数据清洗
● 有哪些数据清洗的方法?
② 数据采样
● 数据采样常用哪些方法?
● 解释下MCMC采样?
2.5.1.2 特征工程
① 特征降维
● 一般常用哪些特征降维的方式?
● 讲一下PCA的原理?
● SVD分解的原理?PCA和SVD的联系与区别?
● LDA:讲一下LDA的原理?并说一下公式?
● T-SNE算法的作用?
② 特征选择
● 特征选择一般常用哪些方法?
● 什么是特征向量与特征值?
● 特征选择中互信息选择的互信息计算公式是什么?
● 介绍一下Lasso回归?
● 如何理解信息增益?
● 树模型中分叉的判断有哪些:信息增益,信息增益比,Gini系数;他们有什么区别?
2.5.1.3 有监督学习-分类和回归方面
① 分类回归树(集成学习)
● 常用的方法有哪些?怎么做回归和分类的?
● Boosting与Bagging的原理以及异同点?谁更关注方差,谁更关注偏差?
● Xgboost、LightGBM、GDBT的原理讲一下?
● Xgboost和GBDT的区别?
● Xgboost如何并行运算的?
● Xgboost与LR各自的优缺点,LR为什么更容易并行?
● 随机森林的随机性如何体现?
● Random Forest 和Xgboost、GDBT的区别?
② 线性回归
● 讲解一下线性回归的底层原理,比如说如何训练,如何得到参数,如何调整参数等?
● 线性回归R^2公式及意义?
③ K近邻(KNN)
● KNN算法和传统的LR和SVM有什么区别?怎么进行优化?
④ 逻辑回归LR
● 讲一下逻辑回归LR的原理?如何提升LR的模型性能?
● LR中为什么要用sigmoid?
● LR和FM的区别?
⑤ SVM
● 详细讲解SVM的原理?
● SVM和感知机的区别?
● SVM和LR相比,两者的区别和各自优缺点?
● SVM中SMO具体的操作以及原理?
● 写一下SVM的损失函数?为什么能转化为对偶问题?能否推导?
● SVM怎么解决不容易找到超平面的问题?
● KKT条件是什么?
● KKT在SVM中起到什么样的作用?
● SVM对于异常值的处理,敏感程度?
● SVM有哪些核函数?
⑥ 朴素贝叶斯(Naive Bayes)
● 详细的讲解一些朴素贝叶斯的底层原理,比如说,如何选参数,如何训练模型,如何做分类?
● 讲一下极大似然估计的原理?
● 朴素贝叶斯的算法实现?
⑦ 决策树(DT)
● 详细讲一下决策树的原理?
● 决策树的ID3和C4.5介绍一下?决策树模型的类别?
● 决策树分裂节点的标准与对应的算法?
2.5.1.4 无监督学习-聚类方面
● 详细讲一下Kmeans聚类的原理?
● 高斯混合模型和K-means的区别和联系?
2.5.1.5 模型评价
● 机器学习中一般怎么衡量模型效果?
● AUC值怎么理解?为什么要用AUC去衡量机器学习模型的好坏?
● 信息检索中为什么使用Recall和Precision?
● 怎么衡量两个分布的差异?KL散度和交叉熵损失有什么不同?
● 交叉熵和相对熵(KL散度)的关系?
2.5.2 手推算法及代码
2.5.2.1 手推公式
● 写出LR的损失函数?
● 写出LR的实现过程,前向传播和反向传播?
● 写出FM的推导?
● 写出xgboost的推导?
● 写出GBDT的推导?
● 写出SVM公式推导?
● 写出朴素贝叶斯的公式?
● 写出sigmoid函数,并求导?
2.5.2.2 手写代码
● 写出adaboost的伪代码?
● 写出Kmeans聚类算法的代码?
2.6 深度学习&机器学习面经通用知识点
2.6.1 损失函数方面
● 常用的损失函数有哪些?
● 写一下交叉交叉熵,相对熵的公式?
● 逻辑回归中损失函数的意义?
● Smooth L1 loss的公式?
2.6.2 激活函数方面
● 常用的激活函数有哪些?
● Sigmoid的优缺点?Sigmoid和Relu的区别?
2.6.3 网络优化梯度下降方面
● 梯度下降系列的算法有哪些?讲一下优缺点?说一下区别或发展史?
● 写一下Adam优化器的迭代公式?Adam的默认参数有哪些?
● SGD的流程?
● 介绍方向导数和梯度,方向导数和梯度的关系?为什么梯度在机器学习中的优化方法中有效?
2.6.4 正则化方面
● 正则化的本质?
● L1正则化和L2正则化的区别?从数学角度说?
2.6.5 压缩&剪枝&量化&加速
● 怎么做模型压缩?
● 模型蒸馏的原理?
2.6.6 过拟合&欠拟合方面
● 什么是过拟合和欠拟合?
● 怎么防止过拟合和欠拟合?
● 深层网络还是浅层网络容易过拟合?
● BN为什么可以减小过拟合?
2.6.7 其他方面
● 深度学习与机器学习的关系及异同点?
● 如何解决样本不均衡?
● 数据不均衡有什么解决方式,从数据,模型选择,以及损失函数选择角度?
3 面经答案涉及项目知识点
3.1 深度学习-CNN卷积神经网络方面
3.1.1 目标检测方面
3.1.1.1 讲解原理
● 讲一下目标检测各种算法的发展?
● 讲一下One-stage和Two-stage两种的区别?
● 讲一下SSD的流程?并说一下各种变体改进?
● 讲一下Yolov3、Yolov4、Yolov5的算法的原理和流程?各种算法的改进和不同点?
● 在Yolo算法改进过程中,小目标检测上有什么提升?
● 详细讲一下RNN、Fast-RCNN、Faster-RCNN算法的原理?不同算法之间的区别?
● 介绍一下cascade_rcnn?
● 讲一下CenterNet的原理?
● 介绍一下retinaface?
● 讲一下ROI Align和ROI Pooling的原理?ROI Align和ROI Pooling相比,有什么改进?
● 讲一下FPN网络的细节?
● 在目标检测中有哪些可以提升速度但不损失性能操作有哪些?
● 数据增强的常用方法,以及项目里用的数据增强,目标检测中的数据增强?
3.1.1.2 损失函数
● 讲一下Focal Loss的原理?公式是什么?主要解决哪方面的问题?
● Focal Loss和OHEM的区别?
● Faster RCNN损失函数的构成?
3.1.1.3 手写代码
● 手写Nms流程的代码?
● 手写IOU的代码?
● 画出Faster-RCNN的流程以及RPN的具体过程?
3.1.2 目标追踪
● 目标跟踪里匈牙利算法的流程?
3.1.3 图像分割
● 了解哪些语义分割算法?
● 语义分割中miou计算公式?
● 讲一下Unet的原理和流程?
● 讲一下deeplabv2、deeplabv3的原理和流程?
3.1.4 OCR
无
3.1.5 超分辨
● 超分辨率使用什么损失函数?
3.1.6 关键点检测
无
3.1.7 图像分类
● 图像分类发展的各个阶段的网络讲一下?比如Lenet-5、Alexnet、Vgg、Resnet、Inception等?
● 图像分类常使用什么损失函数?
● 分类网络训练集中如果有噪声(错误标注)会有什么影响?怎么解决?
● 细粒度的分类怎么办?比如小狗中的阿拉斯加和哈士奇。
3.1.8 姿态估计
无
3.1.9 目标重识别
无
3.1.10 人脸识别
● FaceNet里的triplet loss的公式,反向传播如何更新
3.1.11 图形图像方面
● OpenGL中Blend方式讲一下?
● 延迟渲染和前向渲染的区别?
● 讲一下PBR、抗锯齿技术?
3.2 深度学习-RNN递归神经网络方面
3.2.1 自然语言处理NLP
3.2.1.1 讲解原理
① Bert
● 详细讲一下Bert的原理?有什么可以改进的地方?
● fastText和Elmo和Bert的区别?
● Word2vec和Bert之间的区别?
② Transformer
● 讲一下Transformer的结构?
③ Attention
● 讲一下Attention的原理?Self-attention的原理和公式?
【Attention参考答案】【Self-attention参考答案】
④ CRF
● 讲解CRF的原理?
● CRF和HMM的关系以及区别?
⑤ Word2vec
● 讲解下Word2vec的原理?包括训练方式及效率?
● Word2vec、glove、elmo、bert的区别?
⑥ CNN的应用
● CNN、RNN、Transformer如何编码文本?
● CNN在文本中的用法?Pooling的应用和作用?
● 讲一下TextCNN的原理?
⑦ 其他
● 给一段文字,如何提取文本特征?
● 讲一下目前比较火的NLP模型?
3.2.1.2 损失函数类
● 讲一下NLP中常用的损失函数?
● 讲一下CTC Loss的功能和作用?
3.3 强化学习
3.3.1 讲解原理
● 讲解下GAN的原理?是如何训练的?
● 介绍下StartGAN?训练时是否遇到困难?
● 介绍DQN、DDQN、AC、DDPG的原理以及区别?
3.3.2 损失函数
● GAN的损失函数是什么?
3.3.3 其他方面
● 强化学习PG的推导?
● 新闻推荐中如果使用强化学习,如何设计?
3.4 机器学习方面
3.4.1 推荐系统
3.4.1.1 讲解原理
● 讲一下deepFM的原理?
● 讲一下FM、FFM的原理?
● 讲一下FM和deepFM的关系?
● 讲一下user-cf、item-cf的原理、公式以及区别?
3.4.1.2 手写代码
● 手写deepFM的结构(代码)?
● 手写xdeepfm模型的结构公式?
3.4.1.3 其他方面
● 推荐系统模型收敛的很好,但是多样性可能不好的情况下如何解决?
4 数据结构与算法分析相关知识点
4.1 数据结构与算法分析
4.1.1 线性表
4.1.1.1 数组
● 给定一个数组,找出数组的最大连续子序列的和
● 给一个无序数组,找到其中位数,并问复杂度?
● 给一个无序数组,输出不在数组中的最小正整数?
● 旋转有序数组中查找指定数
● [2,3,4,6,2,3],找出数组中每个数字的后边比它大的第一个数?
● 两个有序数组的中位数?
● 在空间上优化滚动数组?
● 一维01数组中,求最长的区间?其中0和1数量相等。
● 给一个数组,求其所有数都平方后,共有多少个唯一的值?
● 数组的全排列?
● 判断是否存在个数超过数组长度一半的数
● 在一个有序旋转数组中,查找有无目标值?
● 单调不减数组找出一个数最后出现的位置?
● 给出一个数组,数组中有正数和负数,要求重新排列这个数组,使得原始数组中的正负数交替排列,且保证各自的相对顺序不变。
● 最大数组连乘值
● 数组连续元素最大值的和,动态规划解决?
● 两个有序数组求交集?
● 一个数组,一个数出现一次,其他数出现两次,求出现一次的那个数?
● O(n)时间复杂度和O(1)空间复杂度删除重复元素,数组有序,输入a=[1,1,1,2,5,6,6],输出a=[1,2,5,6]
● 长度为n的字符串中包含m个不同的字符,找出包含这m个不同字符的最小子串?
● 给定一个数组,返回每个对应位置右边第一个比他大的数,没有就是-1,如【4,1,2,5,8】返回【5,2,5,8,-1】
4.1.1.2 链表
● 链表反转?
● 反转链表中偶数位置的值,例如1-2-3-4-5-6-7 变为 1-6-3-4-5-2-7
● 链表判断是否有环?
● 找一个链表中的环?
● 删除链表重复节点?如1-2-3-3-5-5-6 变为1-2-6。
● 删除倒数第k个链表节点?
● 求两个链表的第一个公共结点?
● 链表的冒泡排序?
● k个有序链表合并,问时间复杂度?
4.1.1.3 栈
● 栈和堆的原理和区别?
4.1.1.4 队列
● 两个栈模拟一个队列?
4.1.1.5 字符串
● 字符串最小编辑路径?
● 字符串转数字,及边界条件?
● 删除字符串中连续的重复字符?
● 给定字符串,求最大不重复子串长度?
● 两个字符串,求最短编辑次数使相等?
4.1.1.6 列表
● 列表数字排列可组成的最大数字?
4.1.2 树
4.1.2.1 二叉树
● 什么是二叉树?
● 蛇形打印二叉树?
● 什么是红黑树?
● 红黑树和AVL的区别?
● 给定一个二叉树,求出这个二叉树的宽度和高度?
● 什么是平衡二叉树?平衡二叉树的应用都有哪些?
● 判断是否是二叉平衡树?
● 二叉树前序中序遍历,重建二叉树
● 非递归中序遍历二叉树?
● 二叉树中序遍历递归+非递归
● 二叉树之字型遍历,每行打印?
● 打印二叉树中最左边节点?
● 判断给定序列是否为二叉搜索树的前序遍历?
● 给一个二叉树,输出所有完全一样的(重复的)子树?
4.1.2.2 堆
● 写一下最小K堆?
4.1.2.3 其他
● 线段树和树状数组的异同?
● 树的路径和?
4.1.3 图
4.1.3.1 拓扑排序
● 写一下拓扑排序?
4.1.3.2 最短路径
● 无向无环图中,最短路径的最大值(O(n^3)的解法)?
4.1.4 排序
● 说几个常用排序算法的时间复杂度、空间复杂度、稳定性?
● 快速排序和归并排序描述一下,优缺点(描述)?
● 手写快排,求Topk?
● 手写堆排序
● 写一下桶排序?
4.1.5 搜索
● 求矩阵中连通域的个数,用bfs或dfs做?
● 二维数组找最长递增路径?用DFS方式。
4.2 算法思想实战及智力题
4.2.1 算法思想实战
● 岛计数问题 dfs
● 两堆钞票,尽可能均分
● 小兔的棋盘
● 过河问题
● 棋盘上的连通棋子团数
● 接雨水问题
● 找山顶元素
4.2.2 智力题
● 43个石头,A,B轮流拿,每次可以拿1~3个,A先拿能否保证自己获胜?
【参考答案】中的智力题2
● 1000盏灯开着,1000个人标号1~1000依次进入,每个人进去按一下自己标号倍数的开关,问最后哪些灯亮着?
【参考答案】中的智力题3
● 25匹马赛跑,5个跑道,怎么以最少的比赛次数来决出最快的3匹(思路分析)
● 疯狗问题
4.3 其他方面
4.3.1 数论
● 求几何分布的期望?
● 泰勒公式,用泰勒公式实现e的计算求值?
● 给一个中文数字,比如一百二十,如何转换为整形数字?
4.3.2 概率分析
● A、B交替抛硬币,正面概率为1/2,谁先抛到正面谁胜。问A先抛并获胜的概率?
● 一根木棍, 随机切成三段, 求能围成三角形的概率?
4.3.3 矩阵运算
● 蛇形打印n*n的矩阵
4.3.4 其他
● 如何判断一个算法是线性的还是非线性的?
● 如何输出幂集?
4.4 Leetcode&剑指offer原题
● Leetcode 3 最长不重复子串
● Leetcode 11
● Leetcode 32
● Leetcode 34
● Leetcode 42
● Leetcode 72:字符串的编辑距离
● LeetCode 76:Minimum Window Substring
● Leetcode 123
● Leetcode 124
● Leetcode 148
● Leetcode 206
● Leetcode 224:hard,实现一个基本的计算器来计算一个简单的表达式字符串。表达式字符串只包含非负整数、+, -, *, /操作符。可以假设给定的表达式总是有效的。
● Leetcode 284:一个类A有next,has_next两个方法,其中next调用会返回值,但索引会自增。实现一个peek访问只返回值,索引不自增。
● Leetcode 306
● Leetcode 315
● Leetcode 448:要求时间o(n),空间o(1)。
● Leetcode 560
● Leetcode 786
● Leetcode958:判断一棵树是不是完全二叉树
● Leetcode原题:链表采样,resevior sampling。要求在一个无限长的单向链表中采样,当遍历的节点数量充分多时,每个节点被采样到的概率应相等。
● Leetcode原题:正则表达式匹配
● Leetcode原题:求数x的开方,精确到小数点后一位
● Leetcode原题:旋转数组查找target
● Leetcode原题:字符串左移K位
● Leetcode原题:股票价格
● Leetcode原题:矩阵右旋
● Leetcode原题:01 矩阵找最大子矩阵大小
● Leetcode原题:n的平方根,精度十位小数
● Leetcode原题:计数质数
● Leetcode原题:蚂蚁爬杆
● Leetcode原题:屋舍打劫
● Leetcode原题:数据流中,按照某个窗口大小,找窗口中的最大值
● Leetcode原题:最长回文子串
● Leetcode原题:一个字符串,一个单词字典,把字符串分成若干个子串,每个子串都包含在字典中,返回多少种分割法?
● 剑指offer 41:数据流中的中位数,设计一个数据结构,有插入和删除操作,并且能随时得到数据中的中位数。
5 编程高频问题:Python&C/C++方面
5.1 python方面
5.1.1 网络框架方面
5.1.1.1 Pytorch相关
● torch.Tensor 和torch.tensor的区别?
● torch.no_grad 和 required_grad=False的区别?
● pytorch里function和module有什么区别?
● pytorch里dataset、dataloader、sampler有什么区别?
5.1.1.2 Tensorflow相关
● TensorFlow如何实现并行?
● Tensorflow如何进行梯度传递?
● 梯度更新时是同步还是异步?两者的优缺点?
● Tensorflow的优化器有哪些?
5.1.1.3 其他
● Tensorflow、Keras、Pytorch的区别?
5.1.2 基础知识
5.1.2.1 线程相关
● Python中多线程多进程的应用?
● Python的线程有什么样的缺点?
● Python中的GIL解释一下?
5.1.2.2 内存相关
● Python里面的深拷贝和浅拷贝的原理讲一下?
● Python的回收机制?
5.1.2.3 区别比较
● xrange与range的区别?
● Python是解释语言还是编译语言?
● is与==的区别?
● utf8有几位?英文在 utf8中占几位?utf8和 utf16有什么区别?
5.1.2.4 讲解原理
● Python装饰器,迭代器和生成器的原理讲一下?
● CPython全局锁是什么?
● Python的动态数组是如何实现的?
● Python中dict的底层是啥?
● Python中list的底层怎么实现?
● Python有多线程吗?
● Python里的生成器是什么?
5.1.2.5 讲解应用
● Python常见的数据结构有哪些?
● Python中的C拓展的具体例子?
5.1.3 手写代码相关
● 交换a和b两个数,不借助第三个变量?
● 实现sqrt函数,结果保留5位小数
5.2 C/C++方面
5.2.1 基础知识
5.2.1.1 内存相关
● C++共享内存实现的原理讲一下?
● C语言中的动态内存分配器的原理讲一下?
5.2.1.2 区别比较
● 参数传递时,传值、传引用和传指针的区别?
● 函数返回时,返回值、返回引用和返回指针的区别?
● new和malloc区别?
● map和unordered_map区别?
● C++的虚函数和虚继承的作用?
● dynamic_cast、static_cast和reinterpret_cast区别?
● const A&func(const B& b) const {return …;}中三个const的区别?
5.2.1.3 讲解原理
● 重载和重写的原理讲一下?
● 多态的原理讲一下?
● Static关键词的作用?修饰符的功能?
● C++面向对象的原理讲一下?
● C++11和之前版本不用的特性有哪些?
● List的底层实现?
● LRU算法讲一下?
5.2.1.4 讲解应用
● C语言中结构体struct{int i; bool b}一共占几个字节?
5.2.2 手写代码相关
● 使用C++实现双向链表类,并插入新的元素?
● 使用C++实现拓扑排序?
● 使用C++实现memcpy?
6 操作系统高频问题:数据库&线程&常用命令等
6.1 数据库方面
6.1.1 基础问题
6.1.1.1 区别比较
● SQL中count(1), count(*), count(列)区别
6.1.1.2 讲解原理
● Mysql的数据存储结构的细节?
● Mysql底层是什么?
● B树和B 树的区别?(项目中的Mysql用了B树)
6.1.2 手写代码
● 使用Mysql取出成绩表中各科的前三名?
6.2 操作系统方面
6.2.1 TCP协议相关
● TCP和UDP的区别?
● TCP如何保证消息安全?
● 三次握手和四次挥手的原理?
6.2.2 线程和进程相关
6.2.2.1 区别比较
● 线程和进程的区别和联系?进程和线程相比有什么好处?
● 同步IO和异步IO的理解?
6.2.2.2 讲解原理
● 进程之间的通信方式?
● 如何从用户态进入内核态?
● 常见的进程调度算法?公平调度?时间片调度?
● 32位操作系统和64位操作系统的寻址范围?
6.2.2.3 讲解应用
● 两个线程,每个线程有一个数组,交替输出,怎么做?
● 讲一下进程和线程的应用场景?
6.2.3 常用命令
● Linux系统怎么查看进程CPU使用率?
本文由 大白智能 作者:凯哲 发表,其版权均为 大白智能 所有,文章内容系作者个人观点,不代表 大白智能 对观点赞同或支持。如需转载,请注明文章来源。
计算机网络和操作系统分开好一点?