face++
1.链表反转
2.快排
3.m*k n*k两矩阵计算欧几里得距离np.tile
4.链表排序,要求时间复杂度小于O(N^2),空间O(1),不允许改变链表的值
5.2sum及其变体
6.给一个数组和target,找到和为target的数对,找出所有,重复也视为不同的方案
7.给定0到n-1,有m个规则要求某个数在另外的某个数前面,用程序输出符合所有规则的排列
8.
递归输出下列长度为2^n的矩阵(每个矩阵由四部分组成),矩阵满足以下条件:
右下角部分全为0,其他部分等于上一阶段的矩阵
N=0, 1
N=1, 1 1
1 0
N=2, 1 1 1 1
1 0 1 0
1 1 0 0
1 0 0 0
9.一维pooling(先avg后max), 考虑时间复杂度和算法复杂度
10.问:Pooling知道吧?我们在做cv的时候,图像经常是不同size的,我们在训练的时候经常通过crop图片取得同size的输入数据。但是训练的时候,输入是整张图,【这样会造成什么后果呢?】用没有什么办法可以解决这个问题呢?即测试的时候如何有效利用整张图的信息?
答:测试的时候也crop,每个croped图片有一个预测结果,通过投票的形式得到最后结果。
问:因为crop是overlapping的,这种方式会造成在部分图片区域上的重复卷积,增加计算复杂度,有没有办法解决这个问题?
答:在卷积输出层,也就是fc层前进行crop(但是网络结构不能改变)
问:怎么做呢?举个例子,原来是8x8x128的卷积输出层,换成全图之后,是10x12x128的卷积层,怎么连接到fc1层(假设是20维的)?
答:(在提示下)用20x8x8x128(n,c,h,w)的卷积核对10x12x128的map进行(s=1,p=0)的卷积,其实就相当于crop,得到fc1为20x3x5(c,h,w)的输出
问:但是此时fc1层改变了(从20编程20x3x5), fc2层与之的连接也就失效了, 怎么解决?
答:(在各种提示下,提醒:搞DeepLearning的,卷积计算一定要熟练啊)用5x20x1x1的卷积核再操作,得到5x3x5的(这里卡住了)输出结果
要得到一个五维的输出向量,对3x5区域做一个平均就可以了(每个channel是3x5=15个结果,即对卷积层输出卷积操作得到3x5个不同feature预测的结果,就是15个crop对应的结果)
11.http://www.lintcode.com/zh-cn/problem/wiggle-sort/
12.任意给一个整数,求分解质因数后有几个5
13.求不超过10000的最大质数?
用最快方法找到1到10000的质数?
14.二分查找
非递归和递归的写法
1.交叉熵是什么
2.bn、gn
1.a,b~U[0,1],互相独立
求Max(a,b) 期望
2.一个数轴,上面有好多气球,每个气球都占用一个空间,空间是闭区间[a,b]。从上面落到位置x的针可以刺破所有区间涵盖了位置x的气球。问要刺破所有气球,至少需要多少镇。
3.一列人排队,每个人可以看到前面的所有人。每个人以50%的概率获得一顶黑色或白色帽子,然后每个人猜自己帽子的颜色,除此之外不能交流。给这组人设计一个策略,使得所有人都猜对自己帽子颜色的概率为50%
4.二面是少有同时了解nlp和cv的,看我简历上也两者都有于是特地给我出了道相关的research题(与词向量和图片分类有关),问解决方法。
5:
a.如果一个女生说,她集齐了十二个星座的前男友,我们应该如何估计她前男友的数量?
b.如果一枚硬币扔了多次是正面,接下来扔的是正面的概率是多少?
那我就是在用后验知识了。换句话说,贝叶斯。
在这个案例里,我已经见到了连续10次正面。当然,一个标准硬币可以产出这样的结果,只不过概率是1/2048而已。但是,有另外一种可能的解释,那就是这个硬币作弊了。或者它的两面都是正面,或者它的正面那边比反面那边重很多。如果它是一枚作弊的、必定正面的硬币,那么它就会以1的概率出产连续10正,这可比标准硬币更有解释力啊!
那么在这里我们可以说,这10次观察得到了一个后验知识——该硬币有偏向于正面的倾向性。这倾向性有多大?可以算但是很麻烦,这里暂且忽略。但无论如何,如果你是一个贝叶斯主义者,相信直觉,不愿意接受“标准硬币”那个先验知识,那么你应当得出的结论是:下一次硬币为正面的概率大于1/2.
c.矩阵的特征值怎么理解?
6.判断一个点是否在一堆点包围的范围内
7.二叉树排序
8.给个label和pred例子,算ap
1、链表排序
2、顺时针打印矩阵
3、求两个无序数组的交集
4、经典的青蛙跳台阶问题
5、判断B数组是否为A数组的旋转数组
6、按绝对值大小排列的数组的二分查找
7、找一个排序数组的旋转数组中的最小值
8、给定一个无序数组,找到该数组中位数
9、求有正有负的数组中和最大的连续子数组
10、求一个带权二叉树的叶子节点之间最短路径中最长的一条
11、二叉树的深度遍历和广度遍历,写完广度遍历追后:那按行打印二叉树呢?
12、有一排房子,每个房子里有不同数量的财产,规定小偷不能偷连续两家的财产,求小偷收获最多的偷法
13、股票的最大利润:假设把股票价格按照时间先后顺序存储在数组中,请问买卖该股票一次可能获得的最大利润是多少
14、图像中有一堆检测框,给定一个检测框看与图中检测框是否有交集;如果有一堆检 测框需要判断呢,有没有更快的方法(提思路即可,没要求写代码)
15、均值池化和最大值池化操作怎么写(当时只让写了一维的情况);写完后告诉我两个float类型变量直接相加可能会有大数吃小数的情况,讲解完什么是大数吃小数是什么之后问如何能尽可能避免精度损失
两个有序链表,求并集。(尽可能得使代码简单,写起来很多坑)
- 判断麻将胡没胡。(考点是正则的状态机实现方式)
- 有N个人,其中有一个明星,所有人都认识明星,明星不认识所有人,只有一种查询方式:A是否认识B,给出找到明星的最优策略。
- 完全二叉树的一下个节点。(On的复杂度肯定是不够的,这题比较好玩~)
- 代码去注释。
- 一个图,起点为A,终点为B,可以选择图中一条边置为0,如何使A到B的最短路径最短。(顺便写写Dijkstra)(这题个人觉得比较难)
- 给出二叉树的先序和中序遍历,构建二叉树。
- 链表排序。
- 矩阵相乘的最优顺序。
- 二分图最大匹配,最小费用最大流。
- 把一堆数分成两堆,使和最相近。(背包搞一搞)
- 数据流找中位数。(大小堆搞一搞)
- 二叉树中权重最大的链,每个点的权重有正有负。
- 加上最少的括号,使括号匹配。
滑动窗口最大值
自我介绍;链表的倒数第k个结点(双指针)
- 应用场景题
- 抛一个不均匀的硬币,设计策略能得到1/2的概率(抛两次)如果要求得到1/3和2/3呢?设计策略(抛四次,我想着抛6次,小哥哥提醒了)
- 给出一个0到n的随机数生成器,设计策略,让不得到x的条件下,得到其他数的均匀分布(只能生成一次)(hash映射,但是我找不到合适的映射函数,小哥哥提醒了)扩展:不得到两个数呢?m个数呢?(一样)
- 房子500万,每年涨10%,程序员工资100万,不涨,问多少年能全款买房(几秒钟估算了一下,永远买不起…)(总觉得小哥哥在暗示我什么)
- 堆介绍,插入元素时调整的时间复杂度(变成二叉树,递归定义)堆排序、其他排序方法介绍和特点(按时间复杂度分了三种去介绍),最常用哪种
1. 拉格朗日乘子法
obj min f(x,y)
s.t. g1(x,y) = 0
g2(x,y) = 0
其中的拉格朗日乘子是什么含义,为什么大于0,拉格朗日乘子法与原始的目标函数有什么区别;
2. 贝叶斯决策,每个部分分别表示什么含义;
3. 讲一下xgb和gbdt的区别
4. Softmax函数中 如果在e(x) 中x的前面增加一个系数 阿尔法,阿尔法大于1,求改变后的输出分布与原始的分布有什么区别,是更集中了还是更平滑了?
5. 如果x和y分别都表示均匀分布,求max(x,y)的期望
6. 算了一个简单的概率题;
7.一个简单的手写算法,另外一个算法题是如何判断一个无向图中是否有环,请给出思路。
8. RestNet的结构图请画一下,为什么解决了梯度消失和爆炸的问题,BottleNeck里面,输入和输出的维度不同是怎么解决的?
三面大佬:
9. Adaboost中的目标函数是什么,你觉得boosting方法里面,从adaboost,gbdt,xgb,gbm,一系列的改进主要是针对什么进行改进的?
10. Restnet中各个stage是什么含义,如何串联在一起?Resnet50和Resnet101有什么区别?
11. 图像分割有看过哪些论文,FCN中每一次的conv和pooling之后,分辨率都会降低,除了讲每种分辨率的feature map叠加还有什么方法? deeplab有了解过吗?两个版本之间有什么区别和联系?
12,onestage的object detection都有哪些? two stage的过程了解吗?Faster RCNN中ROI pooling align与之前的ROI pooling有哪些区别?你觉得该改进方法有效吗?为什么,你觉得还有什么比较好的改进方法
13. 了解Shuffle Net和Mobile吗?你觉得ShuffleNet的缺点是什么? MobileNet看的是哪个版本的(我说v1版本,面试官说v1版本的话就没有什么好问的了)
14. 视频分类里面TSN方法,two stream方法,I3D,C3D这些方法你觉得主要的区别是什么?分别有什么样的优缺点,请详细展开来讲;
15. 了解空洞卷积吗?你觉得空洞卷积有什么样的问题,请描述。
16.了解C++新特性吗?最近还有在用C++吗?
17. 推导一下PCA
18. 了解传统的计算机视觉方法吗?
19. 写一个topK的算法吧,时间复杂度是多少?
如何判断两个dict是否一样
如何在list头上删元素
字符串拼接(join)
链接:https://www.nowcoder.com/discuss/76016
来源:牛客网
1.讲讲自己做的项目
2.问熟悉哪些语言...python
python is ==的区别?
python方法解析顺序
m*k n*k两矩阵计算欧几里得距离np.tile?
3.问上了哪些课?
elf 的 bss段?
ip报文经过一个路由器改变哪些字段?
4.
Batch normalization ?
group convolution ?
5.
a,b~U[0,1],互相独立
求Max(a,b) 期望