当前位置: 首页 > news >正文

网站建设薪水淘宝指数转换

网站建设薪水,淘宝指数转换,定制网站开发价格,h5模板在线设计文章目录一、题目1、题目描述2、基础框架3、原题链接二、解题报告1、思路分析2、时间复杂度3、代码详解三、本题小知识一、题目 1、题目描述 峰值元素是指其值严格大于左右相邻值的元素。 给你一个整数数组 nums,找到峰值元素并返回其索引。数组可能包含多个峰值…

文章目录

  • 一、题目
    • 1、题目描述
    • 2、基础框架
    • 3、原题链接
  • 二、解题报告
    • 1、思路分析
    • 2、时间复杂度
    • 3、代码详解
  • 三、本题小知识

一、题目

1、题目描述

峰值元素是指其值严格大于左右相邻值的元素。

给你一个整数数组 nums,找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回 任何一个峰值 所在位置即可。

你可以假设 nums[-1] = nums[n] = -∞ 。

你必须实现时间复杂度为 O(log n) 的算法来解决此问题。

示例 1:
输入:nums = [1,2,3,1]
输出:2
解释:3 是峰值元素,你的函数应该返回其索引 2。

示例 2:
输入:nums = [1,2,1,3,5,6,4]
输出:1 或 5
解释:你的函数可以返回索引 1,其峰值元素为 2;
或者返回索引 5, 其峰值元素为 6。

2、基础框架

  • C++版本给出的基础框架如下:

3、原题链接

https://leetcode.cn/problems/find-peak-element/

二、解题报告

1、思路分析

  (1)(1)(1)易证,如果nums[i] > nums[i+1]那么[0…i]区间内肯定存在峰值。如果nums[i] < nums[i+1],那么[i…nums.length-1]区间内肯定存在峰值。
  (2)(2)(2)所以该问题具有二分性,如果是nums[mid]>nums[mid+1],那么丢弃[i+1…r],即r = mid.
  (3)(3)(3)如果nums[mid]<nums[mid+1],那么就丢弃[l…i],即l = mid +1
  (4)(4)(4)二分的出口条件是l >= r,即l一旦等于r就会结束循环,所以mid不会大于r,即mid+1不会有越界问题。

2、时间复杂度

时间复杂度为O(logn)

3、代码详解

class Solution {
public:int findPeakElement(vector<int>& nums) {int l = 0;int r = nums.size() - 1;while(l < r) {int mid = l + (r - l) / 2;if (nums[mid] > nums[mid+1]) {r = mid;}else l = mid + 1;}return r;}
};

三、本题小知识

http://www.wangmingla.cn/news/21138.html

相关文章:

  • 网站如何做邮箱订阅杭州线上推广
  • 东莞销售网站公司哪家好外贸seo推广公司
  • 做网站如何报价名片seo什么意思
  • ipa文件自己网站怎么做下载网络黄页推广软件哪个好
  • 阿里云服务器做网站小红书推广引流软件
  • 成都艾邦视觉专业网站建设公司关键词优化简易
  • 那个网站做的系统最好营业推广方案
  • 初中做网站软件免费个人自助建站
  • 株洲网站开发公司电话分析影响网站排名的因素
  • 做类似返利网的网站有哪些优化营商环境建议
  • 建设文化产业网站的方案360安全浏览器
  • 哪里找做网站客户网络销售怎么找客户
  • 什么叫网站公众号推广接单平台
  • 永嘉网站制作深圳创新创业大赛
  • 门头沟网站建设网站seo在线诊断
  • 单页网站的营销哪些平台可以打小广告
  • 网站如何做api接口web个人网站设计代码
  • 重庆政府网站建设seo快速优化排名
  • 网站怎么做会员系统免费注册推广网站
  • 做网站后台服务器什么最好现在网络推广方式
  • 好看的学校网站首页企业网站模板建站
  • 营销网站有多种类型搭建自己的网站
  • 网站编程培训学校招生平台推广渠道
  • 佛山专业做企业网站什么叫关键词
  • 专做排版网站防恶意竞价点击软件
  • 建设网站联盟班级优化大师怎么用
  • 网站开发协议博客网
  • 如何提升网站加载速度百度一下就知道官网
  • 网站开发需要甲方提供什么百度竞价广告推广
  • 云南装饰公司做网站微商刚起步怎么找客源