7.29日字节机器学习平台后端一面

1.一个长度为 N 的一维 float 数组,我们希望使用一个窗口大小为 k (k 为奇数)的滤波器对其进行均值平滑。给定数组,请设计算法计求出滤波后的数组。

2.有一个二维矩阵 A,大小 MxN,我们定义存在这样一条拆线:折线上所有元素值相加后和最小,折线从第一行开始最后一行结束,折线每次下移一行时只有三个(最多三个)可能的位置,
即正下方、正下方左边、 正下方右边。 给定矩阵,求最小折线和?
举例:
1 2 3 0 4
5 6 1 7 8
9 1 2 3 4
5 6 0 7 8
0 -> 1 -> 1 -> 0 和最小为 2.

3.介绍自己的深度学习项目,聊得比较深入

4.正则化,dropout,resnet,

5.堆和栈(内存区域的)

6.多线程,互斥锁,读写锁

还有的忘了, 面了80分钟,应该还问了其他问题。

太久没做算法题,在边界条件这卡了好久,希望能有二面。
#字节跳动校招字节跳动秋招##字节跳动##面经##机器学习#
全部评论
第一个算法题,是取滑动窗口内的平均值代替窗口中点的值吗?
点赞 回复 分享
发布于 2021-07-29 22:22
**,老哥跟我一模一样的题
点赞 回复 分享
发布于 2021-07-30 08:45
自己试着写了下,感觉应该没什么问题 def meanFilter(nums, k):     assert k % 2 == 1     n = k // 2     def mean(i):         sum, count = 0, 0         for j in range(i-n, i+n+1):             if 0 <= j < len(nums):                 sum += nums[j]                 count += 1         return sum / count     return [mean(i) for i in range(len(nums))] def minPath(matrix):     m, n = len(matrix), len(matrix[0])          def moveFrom(i, j):         if i == m:             return 0         else:             left = float('inf&(835)#39;) if j-1 < 0 else moveFrom(i+1, j-1)             middle = moveFrom(i+1, j)             right = float('inf&(835)#39;) if j+1 > n-1 else moveFrom(i+1, j+1)             return matrix[i][j] + min(middle, min(left, right))          res = min([moveFrom(0, j) for j in range(n)])     return res
点赞 回复 分享
发布于 2022-03-16 18:55

相关推荐

11-07 13:31
怀化学院 Java
勇敢牛牛不怕难:又疯一个
点赞 评论 收藏
分享
评论
点赞
9
分享
牛客网
牛客企业服务