leetcode941-Valid Mountain Array

题目

给定一个整数数组 arr,如果它是有效的山脉数组就返回 true,否则返回 false。
让我们回顾一下,如果 arr 满足下述条件,那么它是一个山脉数组:
arr.length >= 3
在 0 < i < arr.length - 1 条件下,存在 i 使得:
arr[0] < arr[1] < … arr[i-1] < arr[i]
arr[i] > arr[i+1] > … > arr[arr.length - 1]
示例 1:
输入:arr = [2,1]
输出:false

分析

类似这种题目很自然的想到双指针遍历,一个从头开始如果发现arr[i]<arr[i+1]成立则i++,另外一个从尾开始遍历如果发现arr[i] < arr[j-1]则j–。最终判断i和j一样的话则说明是山脉数组

public class validMountainArray {public static void main(String[] args) {int[] arr = {0,3,2,1};System.out.println(isMountain(arr));}public static boolean isMountain(int[] arr) {int i = 0;int n = arr.length;int j = n - 1;while(i < n - 1 && arr[i] < arr[i+1]) {i++;}while(j > 0 && arr[j] < arr[j-1]) {j--;}return i > 0 && j < n - 1 && i == j;}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/827734.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一个docker配置mysql主从服务器

这也就是因为穷&#xff0c;不然谁用一个docker配置主从&#xff0c;哈哈 既然成功了就记录下。过程挺折磨人的。 首先要保证你的电脑安装好了docker 为了保证docker当中主从能正常连网&#xff0c;现在docker里面创建一个网络环境 docker network create --driver bridge mysq…

面试八股——RabbitMQ

消息丢失问题 消息确认机制 生产者与MQ之间的消息确认&#xff1a; 当MQ成功接收消息后&#xff0c;会返回给生产者一个确认消息。如果在规定时间内生产者未收到确认消息&#xff0c;则任务消息发送失败。 MQ与消费者之间的消息确认&#xff1a; 当MQ成功接收消息后&#…

DeepFaceLab小白教程:视频换脸过程

合适那些人阅读&#xff1f; 适合从未使用过DeepFaceLab的群体。 如果你想基于DeepFaceLab完成一次视频换脸的操作&#xff0c;可以看本篇。 下载方式 GitHub https://github.com/iperov/DeepFaceLab 我是用motrix下载。 网盘 https://pan.baidu.com/share/init?surlO4…

鸿蒙(HarmonyOS)性能优化实战-Swiper高性能开发

背景 在应用开发中&#xff0c;Swiper 组件常用于翻页场景&#xff0c;比如&#xff1a;桌面、图库等应用。Swiper 组件滑动切换页面时&#xff0c;基于按需加载原则通常会在下一个页面将要显示时才对该页面进行加载和布局绘制&#xff0c;这个过程包括&#xff1a; 如果该页面…

nest使用swagger文档

OpenAPI(Swagger)规范是一种用于描述 RESTful API 的强大定义格式。 Nest 提供了一个专用模块来使用它。 安装 npm安装 npm install --save nestjs/swagger swagger-ui-expressyarn 安装 yarn add nestjs/swagger swagger-ui-express引入 使用 SwaggerModule 类初始化 Swa…

怎样实现由.ui文件生成的.py文件的逻辑分离?

使用Qt5实现由PyQtDesigner生成的.ui.py文件的逻辑分离的过程可以使用以下步骤&#xff1a; 将通过PyQtDesigner生成的.ui文件转换为.py文件。可以使用命令行工具pyuic5来实现这一步骤。运行命令pyuic5 input.ui -o output.py&#xff0c;其中input.ui是原始的.ui文件的路径&am…

【Hadoop】-Hive初体验[13]

Hive体验 预先确保已经完成部署Hive&#xff0c;并启动了Metastore服务 可以执行&#xff1a;bin/hive&#xff0c;进入到Hive Shell环境中&#xff0c;可以直接执行SQL语句。 创建表 create table test(id int,name string,gender string); 插入数据 INSERT INTO test val…

Golang基础2-Array、Slice、Map

Array 数组 var a [5]int b:[5]int{} c:[...]int{}这样格式定义var a[5]int 和var a[10]int是不同类型从0开始下标&#xff0c;到len(a)-1遍历方式&#xff1a; for i : 0; i < len(a); i { }for index, v : range a { } 注意越界问题&#xff0c;panic值类型&#xff0c;…

密码学 | Schnorr 协议:零知识身份证明和数字签名

&#x1f955;原文&#xff1a; Schnorr 协议&#xff1a;零知识身份证明和数字签名 &#x1f955;写在前面&#xff1a; 本文属搬运博客&#xff0c;自己留存学习。文中的小写字母表示标量&#xff0c;大写字母表示椭圆曲线中的点。 1 Schnorr 简介 Schnorr 由德国数学家和密…

.NET高级面试指南专题二十七【享元模式介绍,通过共享对象来最大程度地减少内存使用和提高性能】

享元模式是一种结构型设计模式&#xff0c;旨在通过共享对象来最大程度地减少内存使用和提高性能。 在享元模式中&#xff0c;对象被分为两种部分&#xff1a;内部状态&#xff08;intrinsic state&#xff09;和外部状态&#xff08;extrinsic state&#xff09;。内部状态是对…

windows系统下python开发工具安装

一. 简介 前一篇文章学习了安装 python解释器&#xff0c;文章如下&#xff1a; windows系统下python解释器安装-CSDN博客 本文来学习如何下载安装 python开发工具 PyCharm。 二. python开发工具 PyCharm下载安装 1. PyCharm官网 PyCharm开发工具 PyCharm为 python代码…

C语言程序每日一练(9、楼梯)

探索打印楼梯与笑脸的奇妙之旅 在这篇博客中&#xff0c;我将分享一段有趣的代码&#xff0c;它可以打印出一个楼梯的图案&#xff0c;同时在楼梯上方打印出两个笑脸。 首先&#xff0c;让我们来看看代码的实现。这段代码使用了i控制行&#xff0c;j来控制列&#xff0c;通过j…

Fast DDS之Qos与Profiles

目录 XML profiles加载创建修改可配置内容 QosDeadlineQosPolicyDestinationOrderQosPolicyDurabilityQosPolicyDurabilityServiceQosPolicyEntityFactoryQosPolicyGroupDataQosPolicyHistoryQosPolicyLatencyBudgetQosPolicyLivelinessQosPolicyOwnershipQosPolicyOwnershipSt…

python基础知识四(列表、元组、函数)

目录 list 列表&#xff1a; 1. 列表的概念 2. 列表的特点 3. 列表的创建 4. 列表的索引 5. 列表的切片 6. 列表的遍历 7. 列表的常用方法 tuple 元组&#xff1a; 1. 什么是元组&#xff1f; 2. 元组的定义 3. 元组的特点和作用 函数&#xff1a; 1. 函数的概念…

Llama网络结构介绍

LLaMA现在已经是开源社区里炙手可热的模型了&#xff0c;但是原文中仅仅介绍了其和标准Transformer的差别&#xff0c;并没有一个全局的模型介绍。因此打算写篇文章&#xff0c;争取让读者不参考任何其他资料把LLaMA的模型搞懂。 结构 如图所示为LLaMA的示意图&#xff0c;由…

域名被污染了只能换域名吗?

域名污染是指域名的解析结果受到恶意干扰或篡改&#xff0c;使得用户在访问相关网站时出现异常。很多域名遭遇过污染的情况&#xff0c;但是并不知道是域名污染&#xff0c;具体来说&#xff0c;域名污染可能表现为以下情况&#xff1a;用户无法通过输入正确的域名访问到目标网…

24.4.20 蚂蚁笔试(开发)a1.09

只是个人记录&#xff0c;玻璃心请大佬轻喷&#xff0c;如果有幸能得到大佬的指教那就更好啦~ 若干单选和多选&#xff0c;感觉没有太难。下面是三个算法题&#xff08;记不住具体的题目了&#xff0c;&#xff09; 题目1 大致题意&#xff1a;数组a有n个元素&#xff0c;让…

Windos环境下配置免费SSL证书详细步骤

获取免费证书 配置本机模拟域名 打开如下目录&#xff0c;hosts文件 C:\Windows\System32\drivers\etc 添加如下配置并保存 127.0.0.1 im.test.com下载安装 OpenSSL 下载链接 进入bin目录&#xff0c; 打开cmd窗口 执行如下命令&#xff0c;生成RSA私钥 ## 使用des3…

大型集团企业 怎么实现多区域文件交换?

很多大型集团企业&#xff0c;都会在全国各地&#xff0c;甚至海外&#xff0c;都设立分支机构&#xff0c;还有银行、邮政这类机构&#xff0c;都会在全国各地设立多个支行和网点&#xff0c;所以在日常经营过程中&#xff0c;都会存在多区域文件交换的场景。 大型集团企业在进…

JVM垃圾收集器--分区收集器

G1收集器 G1&#xff08;Garbage-First Garbage Collector&#xff09;在 JDK 1.7 时引入&#xff0c;在 JDK 9 时取代 CMS 成为了默认的垃圾收集器。G1 有五个属性&#xff1a;分代、增量、并行、标记整理、STW。 分代 G1收集器 将内部分为多个大小相等的区域&#xff0c;另…