如题:
设计算法
bool Find(int *maxtrix, const int rows, const int cols, const int key)
{
if (maxtrix == NULL || rows < 0 || cols < 0) {
return false;
}
bool found = false;
int row = 0, col = cols - 1;
while (row < rows && col >= 0) {
if (maxtrix[row * cols + col] == key) {
found = true;
break;
} else if (maxtrix[row * cols + col] > key) {
-- col;
} else {
++ row;
}
}
return found;
}
矩阵查找算法
本文介绍了一种高效的矩阵查找算法,该算法能在行和列都已排序的二维数组中搜索指定元素。通过从右上角开始比较并逐步逼近目标值的位置,算法能够在O(rows+cols)的时间复杂度内完成查找。
1815

被折叠的 条评论
为什么被折叠?



