计算大二进制矩阵中小二进制矩阵的出现
count the appearance of a small binary matrix in a big binary matrix
给定两个二进制矩阵 m1 和 m2,与 m1 相比,m2 保证具有更大或相等的大小(在两个维度上(。 在 C++ 中编写一个函数来计算 M1 在 M2 中的出现。 例如
m1 = [1 1;1 1], m2 = [1 1 0 0;1 1 0 0;0 0 1 1;0 0 1 1]
然后 M1 在 M2 中出现了 2 次,该函数应该返回整数 2。
任何人都可以使用基于位操作的方法来有效地解决这个问题吗?
如果使用运行长度编码表示二进制模式,则问题将变为在压缩表示形式上与普通字符串匹配的字符串,并且不需要位摆弄。
然后,您可以求助于标准算法,例如Boyer-Moore,当发现不匹配时,您可以使用所有行中找到的最长移位。
相关文章:
- 在二维数组中查找最小值和最大值?
- 运行无限循环的最小二叉树问题
- 如何排列二进制字符串以最小化它们之间的距离
- 如何将 numpy 二维数组作为一种可以用C++读取的二进制格式存储在磁盘上
- 最小二乘多项式拟合仅适用于偶数个坐标
- 犰狳函数的不同最小二乘误差
- 谷神星求解器:对非线性最小二乘法使用平滑近似
- 从二维数组中查找最小值和最大值
- 无法使用 glm::vec2 作为矩阵的标量类型并使用线性最小二乘法求解
- 线性代数方程 Ax 的最小二乘解 = 由 在本征C++中
- 以线性最小二乘方式求解系统 Ax=b,具有复元素和下三角形平方 A 矩阵
- 线性方程组,带约束的最小二乘法
- 如何强制编译器或解释器查看二进制数二的补码?
- 用最小二乘法拟合圆
- 图像曲线拟合的多项式最小二乘法
- 偏最小二乘库
- GSL 非线性最小二乘拟合不会收敛
- 卡尔曼,最小二乘法,或
- 迭代非线性最小二乘优化3d到2d投影
- 用c++特征库求解线性最小二乘方程(动态分配)