首页 > 其他分享 >(查找)03-寻找峰值

(查找)03-寻找峰值

时间:2023-11-29 23:33:53浏览次数:31  
标签:03 右边 right nums int mid 峰值 查找 left

 1 import java.util.*;
 2 
 3 public class Solution {
 4     /**
 5      * @param nums int整型一维数组
 6      * @return int整型
 7      */
 8     public int findPeakElement (int[] nums) {
 9         // 申请左指针
10         int left = 0;
11         // 申请右指针
12         int right = nums.length - 1;
13         // 二分法遍历
14         while (left < right) {
15             int mid = (left + right) / 2;
16             // 右边是往下=右边没有坡峰
17             if (nums[mid] > nums[mid + 1])
18                 right = mid;
19             // 右边是往上=右边能找到波峰
20             else
21                 left = mid + 1;
22         }
23         // 其中一个波峰
24         return right;
25     }
26 }

 

标签:03,右边,right,nums,int,mid,峰值,查找,left
From: https://www.cnblogs.com/StringBuilder/p/17866196.html

相关文章

  • day1数组理论基础,704. 二分查找,27. 移除元素
    数组理论基础,704.二分查找,27.移除元素1数组理论基础1.1数组概念定义:存放在连续内存空间上的相同类型数据的集合。特点:1.数组中数据类型相同2.数组所占空间连续1.2数组创建2704.二分查找给定一个n个元素有序的(升序)整型数组nums和一个目标值target,写一个函数......
  • 麻烦问一下Python采集到的文本列表中有大量的 ', ' 符号 想这种符号怎么删除
    大家好,我是皮皮。一、前言前几天在Python铂金流群【泅渡】问了一个Python字符处理的问题,一起来看看吧。问题描述:麻烦问一下Python采集到的文本列表中有大量的  ','  符号 想这种符号怎么删除?二、实现过程这里【不上班能干啥!】和【瑜亮老师】分别给了一个指导,如下......
  • # yyds干货盘点 # 麻烦问一下Python采集到的文本列表中有大量的 ', ' 符号 想这种符号
    大家好,我是皮皮。一、前言前几天在Python铂金流群【泅渡】问了一个Python字符处理的问题,一起来看看吧。问题描述:麻烦问一下Python采集到的文本列表中有大量的  ','  符号 想这种符号怎么删除?二、实现过程这里【不上班能干啥!】和【瑜亮老师】分别给了一个指导,如下图所示:......
  • #P1031. 三连击
    next_permutation全排列公式数据不大,直接暴力全排列模拟出数据即可usingnamespacestd;intp[9]={1,2,3,4,5,6,7,8,9};intmain(){ inta,b,c; cin>>a>>b>>c; intcnt=0; do{ intx=p[0]*100+p[1]*10+p[2]; inty=p[3]*100+p[4]*10+p[5]; intz=p[6]*100+p[7]*10+......
  • linux文件查找和打包压缩
    1文件查找1.1mlocatelocate 查询系统上预建的文件索引数据库 /var/lib/mlocate/mlocate.db索引的构建是在系统较为空闲时自动进行(周期性任务),执行updatedb可以更新数据库,遍历整个根文件系统,很消耗资源工作特点:查找速度快;默认模糊查找,支持正则表达式;非实时查找;搜索的是文......
  • Linux文件查找、打包压缩及解压
    打包压缩1. 使用tar命令进行文件打包。基本语法如下:tar-cvf压缩文件名文件1文件2...2. 如果您想同时压缩多个文件,可以使用tar-cf命令:tar-cf压缩文件名.tar文件1文件2...3. 使用gzip或bzip2进行压缩。例如,使用gzip压缩:gzip压缩文件名.tar4. 压缩时添加......
  • 代码随想录算法训练营第一天| 704. 二分查找、27. 移除元素
    LeetCode704二分查找题目链接:LeetCode704左闭右闭:视频讲解:手把手带你撕出正确的二分法思路:在循环条件中注明left<=right,即[left,right]classSolution{public:intsearch(vector<int>&nums,inttarget){intleft=0,right=nums.size()-1......
  • FileNotFoundError: [WinError 2] 系统找不到指定的文件。: '0054243eb93327df4b59023
    importos#指定目录directory='E:\\pythonProject\\a'#获取当前目录下所有图片文件image_files=[fforfinos.listdir(directory)iff.endswith('.jpg')orf.endswith('.png')orf.endswith('.jpeg')]#重命名图片文件fori,fileinenumer......
  • P1036 [NOIP2002 普及组] 选数(递归)
    [P1036[NOIP2002普及组]选数]我的思路是运用递归实现一个树状分支例如3712194选3,每个情况为3-7-123-12-197-12-19注意我们用递归时在传参时要以和的形式传参。如果先求和再传参就会发生错误.#include<iostream>#include<string>#include<math.h>#include<......
  • Linux文件查找、打包压缩及解压
    1.find命令:2.find命令用于在文件系统中搜索文件和目录。3.例如,要在/home目录下查找所有以.txt结尾的文件,可以使用:find/home-name"*.txt"。4.grep命令:5.grep命令用于在文件中搜索特定模式。6.例如,要在当前目录下的所有文件中查找包含"keyword"的行,可以使用:grep"keyw......