LeetCode74.搜索二维矩阵

各位客官们,大家好,今天我将给大家讲一个关于二维搜索矩阵的简单方法,大家如果觉得好的话不妨给个免费点赞吧^ _ ^.

题目要求,如图所示:

此题我用的是堆的形式直接把二维数组转为一级数组,然后再用二分查找的方式,就能直接判别目标值了,代码如图所示:

c 复制代码
int Binary_search(int* arr,int length,int target)
{
    int left = 0;
    int right = length - 1;
    while(left <= right)
    {
        int mid = (left + right) / 2;
        if(arr[mid] == target)
        {
            return 1;
        }else if(target > arr[mid]){
            left = mid + 1;
        }else{
            right = mid - 1;
        }
    }
    return 0;
}
bool searchMatrix(int** matrix, int matrixSize, int* matrixColSize, int target) {
    int col = *matrixColSize;
    int total = matrixSize * col;
    int* arr = (int*)malloc(sizeof(int) * total);
    int len = 0;
    int i = 0;
    int j = 0;
    for(i = 0;i < matrixSize;i++)
    {
        for(j = 0;j < col;j++)
        {
            arr[len] = matrix[i][j];
            len++;
        }
    }
    int ret = Binary_search(arr,len,target);
    if(ret == 1)
        return true;
    else
        return false;
}

好了,这就是我的代码,如果大家觉得好的话,不妨给个免费的赞吧 ^ _ ^.

相关推荐
算法鑫探6 小时前
闰年判断:C语言实战解析
c语言·数据结构·算法·新人首发
WBluuue6 小时前
数据结构与算法:康托展开、约瑟夫环、完美洗牌
c++·算法
木子墨5166 小时前
LeetCode 热题 100 精讲 | 并查集篇:最长连续序列 · 岛屿数量 · 省份数量 · 冗余连接 · 等式方程的可满足性
数据结构·c++·算法·leetcode
王老师青少年编程7 小时前
csp信奥赛C++高频考点专项训练之贪心算法 --【线性扫描贪心】:均分纸牌
c++·算法·编程·贪心·csp·信奥赛·均分纸牌
EQUINOX17 小时前
2026年码蹄杯 本科院校赛道&青少年挑战赛道提高组初赛(省赛)第一场,个人题解
算法
萝卜小白7 小时前
算法实习Day04-MinerU2.5-pro
人工智能·算法·机器学习
Liangwei Lin8 小时前
洛谷 P3133 [USACO16JAN] Radio Contact G
数据结构·算法
weixin_513449968 小时前
PCA、SVD 、 ICP 、kd-tree算法的简单整理总结
c++·人工智能·学习·算法·机器人
code_pgf8 小时前
Qwen2.5-VL 算法解析
人工智能·深度学习·算法·transformer
Code-keys8 小时前
Android Codec2 Filter 算法模块开发指南
android·算法·音视频·视频编解码