力扣1901.寻找峰值II

力扣1901.寻找峰值II

    • 二分每一行 并用函数找出每一行中最大值的下标
    • 若最大值比其下面相邻的元素大 则上方一定存在峰值
    • 若最大值比其下面相邻的元素小 则下方一定存在峰值
cpp 复制代码
  class Solution {
      int indexmax(vector<int> &a)
      {
          return max_element(a.begin(),a.end()) - a.begin();
      }
  public:
      vector<int> findPeakGrid(vector<vector<int>>& mat) {
          int l = 0,r = mat.size() - 1;
          while(l < r)
          {
              //行
              int i = l + r >> 1;
              //列
              int j = indexmax(mat[i]);
              if(mat[i][j] > mat[i+1][j]) r = i;
              else l = i + 1;
          }
          return {l,indexmax(mat[l])};
      }
  };
相关推荐
星释19 小时前
Rust 练习册 82:Hamming与字符串处理
开发语言·算法·rust
vir0220 小时前
P12155 [蓝桥杯 2025 省 Java B] 消失的蓝宝
java·职场和发展·蓝桥杯
小张成长计划..20 小时前
【C++】16:模板进阶
c++·算法
AndrewHZ20 小时前
【图像处理基石】如何使用大模型进行图像处理工作?
图像处理·人工智能·深度学习·算法·llm·stablediffusion·可控性
AndrewHZ21 小时前
【图像处理基石】图像处理的基础理论体系介绍
图像处理·人工智能·算法·计算机视觉·cv·理论体系
稚辉君.MCA_P8_Java1 天前
Gemini永久会员 Java实现的暴力递归版本
java·数据结构·算法
冯诺依曼的锦鲤1 天前
算法练习:差分
c++·学习·算法
有意义1 天前
栈数据结构全解析:从实现原理到 LeetCode 实战
javascript·算法·编程语言
鹿鹿鹿鹿isNotDefined1 天前
逐步手写,实现符合 Promise A+ 规范的 Promise
前端·javascript·算法
封奚泽优1 天前
下降算法(Python实现)
开发语言·python·算法