LeetCode 496、下一个更大元素 I

news/2024/7/5 21:20:25

496、下一个更大元素 I

1)题目描述

nums1 中数字 x下一个更大元素 是指 xnums2 中对应位置 右侧第一个x 大的元素。

给你两个 没有重复元素 的数组 nums1nums2 ,下标从 0 开始计数,其中nums1nums2 的子集。

对于每个 0 <= i < nums1.length ,找出满足 nums1[i] == nums2[j] 的下标 j ,并且在 nums2 确定 nums2[j]下一个更大元素 。如果不存在下一个更大元素,那么本次查询的答案是 -1

返回一个长度为 nums1.length 的数组 ans 作为答案,满足 ans[i] 是如上所述的 下一个更大元素

示例 1:

输入:nums1 = [4,1,2], nums2 = [1,3,4,2].
输出:[-1,3,-1]
解释:nums1 中每个值的下一个更大元素如下所述:
- 4 ,用加粗斜体标识,nums2 = [1,3,4,2]。不存在下一个更大元素,所以答案是 -1 。
- 1 ,用加粗斜体标识,nums2 = [1,3,4,2]。下一个更大元素是 3 。
- 2 ,用加粗斜体标识,nums2 = [1,3,4,2]。不存在下一个更大元素,所以答案是 -1 。

示例 2:

输入:nums1 = [2,4], nums2 = [1,2,3,4].
输出:[3,-1]
解释:nums1 中每个值的下一个更大元素如下所述:
- 2 ,用加粗斜体标识,nums2 = [1,2,3,4]。下一个更大元素是 3 。
- 4 ,用加粗斜体标识,nums2 = [1,2,3,4]。不存在下一个更大元素,所以答案是 -1 。

提示:

  • 1 <= nums1.length <= nums2.length <= 1000
  • 0 <= nums1[i], nums2[i] <= 10^4
  • nums1nums2中所有整数 互不相同
  • nums1 中的所有整数同样出现在 nums2

2)分析

暴力遍历。对于nums1中的每一个元素,都在nums2中找到与之相等的元素,并从该位置开始向后找比该元素大的数字。若找到了,则将其放入结果,否则放入-1

2)C++代码

class Solution {
public:
    vector<int> nextGreaterElement(vector<int>& nums1, vector<int>& nums2) {
        vector<int> res;
        for(int i=0;i<nums1.size();i++){
            int j=0;
            while(j<nums2.size()&&nums1[i]!=nums2[j])
                j++;
            j+=1;
            while(j<nums2.size()&&nums2[j]<=nums1[i])
                j++;
            res.push_back(j<nums2.size()?nums2[j]:-1);
        }
        return res;
    }
};

http://www.niftyadmin.cn/n/3573274.html

相关文章

java自然语言理解分频_如何评价华为 2019 年 11 月 25 日发布的 Sound X 智能音箱?...

HiFi智能&#xff0c;华为Sound X 回归音箱本质&#xff0c;提供真正的环绕立体声效果。同时&#xff0c;并没有牺牲智能交互体验。接下来&#xff0c;带大家去了解这款新品的更多信息&#xff01;声智科技基于SoundAI Cimon声学软件和SoundAI Babel开放大脑&#xff0c;为华为…

MySQL5.6与5.7的区别——及MySQL5.6版本安装

一、MySQL5.7对比5.6的优势1.安全性2.灵活性4.易用性5.可用性6.性能优势7.默认参数的改变8.安装不同二、MySQL 5.6 的安装步骤1.查看并解压源码包2.安装环境3.CMAKE编译并安装4.配置my.cnf和启动脚本5.添加环境变量6.创建程序账号&#xff0c;并授权7.初始化MySQL配置8.开启数据…

51nod 1416:两点 深搜

1416 两点题目来源&#xff1a; CodeForces基准时间限制&#xff1a;1 秒 空间限制&#xff1a;131072 KB 分值: 20 难度&#xff1a;3级算法题收藏关注福克斯在玩一款手机解迷游戏&#xff0c;这个游戏叫做”两点”。基础级别的时候是在一个nm单元上玩的。像这样&#xff1a; …

四川轻工与计算机学院校训,常州轻工职业技术学院校训及含义:诚信 笃实 勤俭 创新...

校训历来是一所学校珍贵的价值遗产和宝贵的精神财富&#xff0c;是一所学校精神的集中表达。新东方在线高考网特别整理了常州轻工职业技术学院校训&#xff0c;供参考&#xff01;诚信 笃实 勤俭 创新——常州轻工职业技术学院校训。校训是一所学校长期以来办学理念、办学风格的…

mysql数据库主从同步(非交互式)

mysql数据库主从同步非交互式配置步骤&#xff0c;本文以一台mysql数据库多实例3306和3308为例进行配置&#xff0c;3306为主库&#xff0c;3308为从库&#xff08;多台单实例与一台多实例配置是一样的&#xff09;一.my.cnf文件配置1.修改my.cnf配置文件&#xff0c;主数据库3…

LeetCode 1232、缀点成线

1232、缀点成线 1&#xff09;题目描述 给定一个数组 coordinates &#xff0c;其中 coordinates[i] [x, y] &#xff0c; [x, y] 表示横坐标为 x、纵坐标为 y 的点。请你来判断&#xff0c;这些点是否在该坐标系中属于同一条直线上。 示例 1&#xff1a; 输入&#xff1a;…

java并发编程 性能与可伸缩性_Java并发编程实战 第11章 性能与可伸缩性

关于性能性能的衡量标准有很多&#xff0c;如&#xff1a;服务时间&#xff0c;等待时间用来衡量程序的"运行速度""多快"。吞吐量&#xff0c;生产量用于衡量程序的"处理能力"&#xff0c;能够完成"多少"工作。多快和多少有时候是互相…

计算机无法共享没有启动不,windows共享文件时右键不出现共享没有共享的选项...

windows右键不出现共享的解决方法问题现象&#xff1a;当我们想在window2003下共享文件时&#xff0c;发现右击文件夹&#xff0c;并没有“共享”的选项解决步骤&#xff1a;首先验证&#xff1a;A.是否administrator身份登录本地连接属性&#xff0c;B.“文件打印机共享”的服…