标签题目
矩阵相关面试题
螺旋数组填充:给一个数组,返回一个 m*n 的矩阵,数从小到大顺时针螺旋填充矩阵,要求 |m-n| 尽可能小
这题考察矩阵尺寸选择和边界模拟。先根据数组长度找最接近的 m、n,再用四个边界按顺时针方向填充,重点处理单行单列和越界收缩。
图像滤波如何通过卷积实现,如何从频域理解低频平滑和高频边缘信息?
图像滤波可以从空间域和频域两条线理解:空间域里,卷积核在局部邻域加权求和,改变每个像素与周围像素的关系;频域里,卷积等价于频谱相乘,滤波器是在保留或抑制不同频率成分。低频通常对应缓慢变化的亮度和大块结构,低通滤波会平滑噪声和细节;高频通常对应边缘、纹理和突变,高通或梯度滤波会强化轮廓但也可能放大噪声。
高斯卷积核如何用可分离卷积等方式优化,时间复杂度和效果会怎样变化?
高斯卷积核优化的核心是利用数学结构和硬件特性减少重复计算。二维高斯核可分解为横向一维高斯和纵向一维高斯的外积,因此一次 K×K 卷积可以改成两次长度 K 的一维卷积,理论复杂度从每像素 O(K²) 降到 O(2K),效果在同一离散核和边界策略下基本等价。进一步还可以通过截断半径、缓存、SIMD、定点化、近似盒滤波或递归滤波继续提速,但要说明精度、边缘和伪影取舍。
积分图如何实现均值滤波,为什么能把窗口求和从面积相关降到常数时间?
积分图用于均值滤波的关键是把每个像素左上方矩形区域的累计和预先存起来。这样任意轴对齐窗口的像素和都可以由四个角的积分值相加相减得到,不再需要逐个遍历窗口内所有像素。对半径为 r 的均值滤波,朴素方法每个像素要累加 (2r+1)² 个值,而积分图在预处理 O(HW) 后,每个窗口求和只需常数次读取和加减,再除以窗口面积即可得到均值。