1. 有什么适合大一计算机专业学生免费的刷题网站
既然大一的同学选择计算机专业,当然少不了刷题啦!但是有很多刷题网站是免费的,同学们想知道吗?下面由我来讲讲吧。
这个网站收录了很多知名互联网公司出的算法题目,相信大一同学很熟悉了,很多同学都在这里刷题,增强对计算机基础知识掌握。它支持多种编程语言,如:Java、Ptthon、Ruby等。最常做的是算法题,目前有一千多道的题目。有专门的图文和视频讲解,方便同学们茶楼补缺。也可以在个人界面查看进展,看自己的学习情况。如果出来工作笔试中,面试官会从这里抽题。刷题过程中全部会了,那么工作没有什么大问题。
以上我列举了三个计算机免费刷题的网站,同学们看到我写的推荐后,来收藏夹吃灰~希望同学们有时间使用这三个网站学习计算机相关知识,提高计算机专业能力,祝你们学有所成!
2. 计算机网络安全技术试题
1. 最有效的保护E-mail的方法是使用加密签字,如( B ),来验证E-mail信息。通过验证E-mail信息,可以保证信息确实来自发信人,并保证在传输过程没有被修改。
A. Diffie-Hellman
B. Pretty Good Privacy(PGP)
C. Key Distribution Center(KDC)
D. IDEA
2. 黑客要想控制某些用户,需要把木马程序安装到用户的机器中,实际上安装的是(B)
A. 木马的控制端程序
B. 木马的服务器端程序
C. 不用安装
D. 控制端、服务端程序都必需安装
3. 下列不属于包过滤检查的是(D)
A. 源地址和目标地址
B. 源端口和目标端口
C. 协议
D. 数据包的内容
4. 代理服务作为防火墙技术主要在OSI的哪一层实现(A)
A. 数据链路层
B. 网络层
C. 表示层
D. 应用层
5. 加密在网络上的作用就是防止有价值的信息在网上被( D本题答案说法不一个人认为是D)。
A. 拦截和破坏
B. 拦截和窃取
C. 篡改和损坏
D. 篡改和窃取
6. 按照可信计算机评估标准,安全等级满足C2级要求的操作系统是(D)
A. DOS
B. Windows XP
C. Windows NT
D. Unix
7. 下面关于口令的安全描述中错误的是(B和D说的都不是很正确。。)`
A. 口令要定期更换
B. 口令越长越安全
C. 容易记忆的口令不安全
D. 口令中使用的字符越多越不容易被猜中
8. 不对称加密通信中的用户认证是通过(B)确定的
A. 数字签名
B. 数字证书
C. 消息文摘
D. 公私钥关系
9. 对于IP欺骗攻击,过滤路由器不能防范的是( D ) 。
A.伪装成内部主机的外部IP欺骗
B.外部主机的IP欺骗
C.伪装成外部可信任主机的IP欺骗
D.内部主机对外部网络的IP地址欺骗
10.RSA加密算法不具有的优点是(D)
A.可借助CA中心发放密钥,确保密钥发放的安全方便
B.可进行用户认证
C.可进行信息认证
D.运行速度快,可用于大批量数据加密
11.PGP加密软件采用的加密算法(C)
A.DES
B.RSA
C.背包算法
D.IDEA
12.以下说法正确的是(D)
A.木马不像病毒那样有破坏性
B.木马不像病毒那样能够自我复制
C.木马不像病毒那样是独立运行的程序
D.木马与病毒都是独立运行的程序
13.使用防病毒软件时,一般要求用户每隔2周进行升级,这样做的目的是(C)
A.对付最新的病毒,因此需要下载最新的程序
B.程序中有错误,所以要不断升级,消除程序中的BUG
C.新的病毒在不断出现,因此需要用及时更新病毒的特征码资料库
D.以上说法的都不对
14.防火墙的安全性角度,最好的防火墙结构类型是(D)
A.路由器型
B.服务器型
C.屏蔽主机结构
D.屏蔽子网结构
剩下的由高人来补。
3. 计算机视觉算法工程师常见面试题1
参考: https://www.hu.com/column/c_1170719557072326656
反卷积也称为转置卷积,如果用矩阵乘法实现卷积操作,将卷积核平铺为矩阵,则转置卷积在正向计算时左乘这个矩阵的转置WT,在反向传播是左乘W,与卷积操作刚好相反,需要注意的是,反卷积不是卷积的逆运算。
[知乎问题+caffe实现]
实现上采样;近似重构输入图像,卷积层可视化。
只要激活函数选择得当,神经元的数量足够,至少有一个隐含层的神经网络可以 逼近闭区间上任意一个连续函数到任意指定的精度。
判别模型,直接输出类别标签,或者输出类后验概率p(y|x)
[ https://www.hu.com/question/268906476]
[ https://zhuanlan.hu.com/p/40024110]
[ https://zhuanlan.hu.com/p/159189617]
BN是在 batch这个维度上进行归一化,GN是计算channel方向每个group的均值方差.
检测结果与 Ground Truth 的交集比上它们的并集,即为检测的准确率 IoU
内存/显存占用;模型收敛速度等
Hessian矩阵是n*n, 在高维情况下这个矩阵非常大,计算和存储都是问题。
mini-batch太小会导致收敛变慢,太大容易陷入sharp minima,泛化性不好。
可以把dropout看成是 一种ensemble方法,每次做完dropout相当于从原网络中找到一个更瘦的网络。
pooling操作虽然能增大感受野,但是会丢失一些信息。空洞卷积在卷积核中插入权重为0的值,因此每次卷积中会skip掉一些像素点;
空洞卷积增大了卷积输出每个点的感受野,并且不像pooling会丢失信息,在图像需要全局信息或者需要较长sequence依赖的语音序列问题上有着较广泛的应用。
表达式为:
使用BN的原因是网络训练中每一层不断改变的参数会导致后续每一层输入的分布发生变化,而学习的过程又要使每一层去适应输入的分布,因此不得不降低网络的学习率,并且要小心得初始化(internal covariant shift)
如果仅通过归一化方法使得数据具有零均值和单位方差,则会降低层的表达能力(如使用Sigmoid函数时,只使用线性区域)
BN的具体过程(注意第三个公式中分母要加上epsilon)
最好的解释是通过1 * 1卷积核能实现多个channel间的解耦合,解耦cross-channel correlation和spatial correlation。
【但是因为解耦不彻底,因此后续有了mobile net的组卷积方式和shuffle net组卷积方式】
由于 1×1 并不会改变 height 和 width,改变通道的第一个最直观的结果,就是可以将原本的数据量进行增加或者减少。改变的只是 height × width × channels 中的 channels 这一个维度的大小而已。
1*1卷积核,可以在保持feature map尺度不变的(即不损失分辨率)的前提下大幅增加非线性特性(利用后接的非线性激活函数),把网络做的很deep。
备注:一个filter对应卷积后得到一个feature map,不同的filter(不同的weight和bias),卷积以后得到不同的feature map,提取不同的特征,得到对应的specialized neuron。
例子:使用1x1卷积核,实现降维和升维的操作其实就是channel间信息的线性组合变化,3x3,64channels的卷积核后面添加一个1x1,28channels的卷积核,就变成了3x3,28channels的卷积核,原来的64个channels就可以理解为跨通道线性组合变成了28channels,这就是通道间的信息交互
注意:只是在channel维度上做线性组合,W和H上是共享权值的sliding window
并不能说明这个模型无效导致模型不收敛的原因可能有
A. 在实际场景下,应尽量使用ADAM,避免使用SGD
B. 同样的初始学习率情况下,ADAM的收敛速度总是快于SGD方法
C. 相同超参数数量情况下,比起自适应的学习率调整方式,SGD加手动调节通常会取得更好效果
D. 同样的初始学习率情况下,ADAM比SGD容易过拟合
A.保证每一层的感受野不变,网络深度加深,使得网络的精度更高
B.使得每一层的感受野增大,学习小特征的能力变大
C.有效提取高层语义信息,且对高层语义进行加工,有效提高网络准确度
D.利用该结构有效减轻网络的权重
A.计算简单
B.非线性
C.具有饱和区
D.几乎处处可微
【relu函数在0处是不可微的。】
A.Adam的收敛速度比RMSprop慢
B.相比于SGD或RMSprop等优化器,Adam的收敛效果是最好的
C.对于轻量级神经网络,使用Adam比使用RMSprop更合适
D.相比于Adam或RMSprop等优化器,SGD的收敛效果是最好的
【SGD通常训练时间更长,容易陷入鞍点,但是在好的初始化和学习率调度方案的情况下,结果更可靠。如果在意更快的收敛,并且需要训练较深较复杂的网络时,推荐使用学习率自适应的优化方法。】
A.使用ReLU做为激活函数,可有效地防止梯度爆炸
B.使用Sigmoid做为激活函数,较容易出现梯度消失
C.使用Batch Normalization层,可有效的防止梯度爆炸
D.使用参数weight decay,在一程度上可防止模型过拟合
对结果存疑。认为二者皆可防止。
A.SGD
B.FTRL
C.RMSProp
D.L-BFGS
L-BFGS(Limited-memory BFGS,内存受限拟牛顿法)方法:
所有的数据都会参与训练,算法融入方差归一化和均值归一化。大数据集训练DNN,容易参数量过大 (牛顿法的进化版本,寻找更好的优化方向,减少迭代轮数)从LBFGS算法的流程来看,其整个的核心的就是如何快速计算一个Hesse的近似:重点一是近似,所以有了LBFGS算法中使用前m个近似下降方向进行迭代的计算过程;重点二是快速,这个体现在不用保存Hesse矩阵上,只需要使用一个保存后的一阶导数序列就可以完成,因此不需要大量的存储,从而节省了计算资源;重点三,是在推导中使用秩二校正构造了一个正定矩阵,即便这个矩阵不是最优的下降方向,但至少可以保证函数下降。
FTRL(Follow-the-regularized-Leader)是一种适用于处理超大规模数据的,含大量稀疏特征的在线学习的常见优化算法,方便实用,而且效果很好,常用于更新在线的CTR预估模型;FTRL在处理带非光滑正则项(如L1正则)的凸优化问题上表现非常出色,不仅可以通过L1正则控制模型的稀疏度,而且收敛速度快;
A.LSTM在一定程度上解决了传统RNN梯度消失或梯度爆炸的问题
B.CNN相比于全连接的优势之一是模型复杂度低,缓解过拟合
C.只要参数设置合理,深度学习的效果至少应优于随机算法
D.随机梯度下降法可以缓解网络训练过程中陷入鞍点的问题
实际上,现在有很多针对小目标的措施和改良,如下:
最常见的是Upsample来Rezie网络输入图像的大小;
用dilated/astrous等这类特殊的卷积来提高检测器对分辨率的敏感度;(空洞卷积是针对图像语义分割问题中下采样会降低图像分辨率、丢失信息而提出的一种卷积思路。利用添加空洞扩大感受野,让原本3 x3的卷积核,在相同参数量和计算量下拥有5x5(dilated rate =2)或者更大的感受野,从而无需下采样。在保持参数个数不变的情况下增大了卷积核的感受野)
有比较直接的在浅层和深层的Feature Map上直接各自独立做预测的,这个就是我们常说的尺度问题。
用FPN这种把浅层特征和深层特征融合的,或者最后在预测的时候,用浅层特征和深层特征一起预测;
SNIP(Scale Normalization for Image Pyramids)主要思路:
在训练和反向传播更新参数时,只考虑那些在指定的尺度范围内的目标,由此提出了一种特别的多尺度训练方法。
4. 计算机网络题
(1) 将IP 地址空间202.118.1.0/24 划分为2 个子网,可以从主机位拿出1 位来划分子网,剩余的7 位用来表示主机号(27-2>120,满足要求),所以两个子网的子网掩码都为:1111111111111111 11111111 10000000,即255.255.255.128;所划分的两个子网的网络地址分别为:
202.118.1.00000000 和202.118.1.10000000(为了理解方便我将最后一个字节用二进制表示,这样可以看清楚子网的划分过程),即202.118.1. 0 和202.118.1.128。
综上,划分结果为:
子网1:202.118.1.0,子网掩码为:255.255.255.128;
子网2:202.118.1.128,子网掩码为:255.255.255.128。
或者写成:
子网1:202.118.1.0/25;
子网2:202.118.1.128/25。
(2) 下面分2 种情况:
(a) 假设子网1 分配给局域网1,子网2 分配给局域网2;路由器R1 到局域网1 和局域网
2 是直接交付的,所以下一跳IP 地址可以不写(打一横即可),接口分别是从E1、E2转发出去;路由器R1 到域名服务器是属于特定的路由,所以子网掩码应该为255.255.255.255(只有和全1 的子网掩码相与之后才能100%保证和目的网络地址一样,从而选择该特定路由),而路由器R1 到域名服务器应该通过接口L0 转发出去,下一跳IP 地址应该是路由器R2 的L0 接口,即IP 地址为202.118.2.2;路由器R1 到互联网属于默认路由(记住就好,课本127 页),而前面我们已经提醒过,默认路由的目的网络IP 地址和子
网掩码都是0.0.0.0,而路由器R1 到互联网应该通过接口L0 转发出去,下一跳IP 地址应该是路由器R2 的L0 接口,即IP 地址为202.118.2.2,故详细答案见下表:
目的网络地址子网掩码下一跳IP 地址接口
202.118.1.0 255.255.255.128 — E1
202.118.1.128 255.255.255.128 — E2
202.118.3.2 255.255.255.255 202.118.2.2 L0
0.0.0.0 0.0.0.0 202.118.2.2 L0
(b) 假设子网1 分配给局域网2,子网2 分配给局域网1;中间过程几乎一样,答案请看下表:
目的网络地址子网掩码下一跳IP 地址接口
202.118.1.128 255.255.255.128 — E1
202.118.1.0 255.255.255.128 — E2
202.118.3.2 255.255.255.255 202.118.2.2 L0
0.0.0.0 0.0.0.0 202.118.2.2 L0
(3) 首先将202.118.1.0/25 与202.118.1.128/25 聚合,聚合的地址为:202.118.1.0/24(只有前面24 位一样),显然子网掩码为:255.255.255.0,故路由器R2 经过接口L0,下一跳为路由器R1 的接口L0,IP 地址为:202.118.2.1,所以路由表项如下表所示:
目的网络地址子网掩码下一跳IP 地址接口
202.118.1.0 255.255.255.0 202.118.2.1 L0
5. 力扣刷题有意义吗
力扣刷题有意义,不仅可以熟能生巧,还可以见识到更多的新东西和不熟悉的,加强自己的印象和学习。
力扣(LeetCode)官网收录了许多互联网公司的算法题目,一度被称为刷题神器。这里我们就来介绍下如何使用力扣(LeetCode)网站。由于力扣(LeetCode)本身也处于不断迭代之后。因此本文部分内容有可能在将来会变得不再适用。
以力扣国际站为例,其官网给出了四个分类:Algorithms、Database、Shell和Concurrency,分别表示算法题、数据库题、Shell和并发题。
第一个就是我们所需要刷的算法题。并发是2019年才添加的新的模块。点开Algorithms后,我们可以看到一个题目的列表,每个题目都有一个唯一的序号。力扣(LeetCode)目前有1000多道题目。
并且一直持续更新,其中有一些是带锁的,需要会员才能查看。后面的接受率(Acceptance)表示提交的正确率,Difficulty表示难易程度。难易程度有三个级别,分别是Easy、Medium和Hard。
Easy通常不需要太多思考和也不会有复杂的细节,比较特别适合新手或者拿来热身。Medium级别就会有些难度,一般都会涉及到经典的算法,需要一定的思考。Hard级别是最难的,有些时候是算法本身的难度。
有些时候特别需要你考虑到各种细节。❝这里分享一个小技巧给大家。衡量一道题目难不难除了看难度之外,还可以看下接受率,接受率越低代表题目越难,这个指标有时候比难度更靠谱。❞你可以对题目进行筛选和排序。如果我们只想要找某一类型的题或者某个公司的题库,可以通过Tags或Company来筛选。