首页 > 其他分享 >503. 下一个更大元素 II(中等)

503. 下一个更大元素 II(中等)

时间:2024-04-01 18:23:29浏览次数:23  
标签:getLast nums int res 中等 II 503 单调 dq

核心思想
维护一个单调递减的单调栈(非严格)
但是由于是循环的,做两次循环即可
代码

public int[] nextGreaterElements(int[] nums) {
        Deque<Integer> dq = new ArrayDeque<>();
        int[] res = new int[nums.length];
        Arrays.fill(res, -1);
        for(int k = 0; k < 2; k++){
            for(int i = 0; i < nums.length; i++){
		//维护单调递减的单调栈(非严格)
                if(dq.isEmpty() || nums[i] <= nums[dq.getLast()]){
                    dq.add(i);
                }else{
		    // 找到答案
                    while(!dq.isEmpty() && nums[i] > nums[dq.getLast()]){
                        res[dq.getLast()] = nums[i];
                        dq.pollLast();
                    }
                    dq.add(i);
                }
            }
        }
        return res;
    }

标签:getLast,nums,int,res,中等,II,503,单调,dq
From: https://www.cnblogs.com/ganyq/p/18109108

相关文章

  • Django在Windows server IIS部署
    Django在WindowsserverIIS部署本文章转载于https://www.django.cn/article/show-21.html,详查看此文教程基于Windowsserver2012+Python3.6+IIS之上部署django的,同样适用于server2012之上的版本服务器和windows7以上的windows操作系统。提示:Python不要安装在windows用户目录下......
  • iis跨域设置
     iis跨域设置在IIS中设置跨域,可以通过以下步骤进行:打开IIS管理器,选择你想要配置的网站。123双击"IIS"部分下的"HTTP响应头"。在右侧的操作面板中,点击"添加..."按钮。在"名称"字段中输入"Access-Control-Allow-Origin",在"值"字段中......
  • 代码随想录算法训练营第二十五天(回溯2)|216. 组合总和 III、17. 电话号码的字母组合(JA
    文章目录216.组合总和III解题思路源码17.电话号码的字母组合解题思路源码216.组合总和III找出所有相加之和为n的k个数的组合,且满足下列条件:只使用数字1到9每个数字最多使用一次返回所有可能的有效组合的列表。该列表不能包含相同的组合两次,组合可......
  • 代码随想录算法训练营第二十七天(回溯3)|39. 组合总和、40. 组合总和 II、131. 分割回文
    文章目录39.组合总和解题思路源码40.组合总和II解题思路源码131.分割回文串解题思路源码39.组合总和给你一个无重复元素的整数数组candidates和一个目标整数target,找出candidates中可以使数字和为目标数target的所有不同组合,并以列表形式返回......
  • Django项目部署本地windows IIS(详细版)和static文件设置(页面样式正常显示)
    Django项目部署本地windowsIIS(详细版)和static文件设置(页面样式正常显示)原文链接:https://blog.csdn.net/hahahahanhanhan/article/details/134638020目录必要条件:一、下载并启用wfastcgi二、window安装IIS功能三、IIS管理器中添加网站1、复制项目2、复制wfastcgi.py文件......
  • Yii2架构简介
    Yii2架构简介Yii2是一个基于组件的PHP框架,它遵循MVC(Model-View-Controller)架构模式。以下是一个简化的Yii2应用程序的基本架构代码概述,以便你可以更好地理解其组成部分和工作原理。目录结构一个典型的Yii2应用程序的目录结构如下:/├──commands/#命......
  • 【二叉树】Leetcode 437. 路径总和 III【中等】
    路径总和III给定一个二叉树的根节点root,和一个整数targetSum,求该二叉树里节点值之和等于targetSum的路径的数目。路径不需要从根节点开始,也不需要在叶子节点结束,但是路径方向必须是向下的(只能从父节点到子节点)。示例1:**输入:**root=[10,5,-3,3,2,null,11,3,......
  • 代码随想录算法训练营第32天| 122.买卖股票的最佳时机 II、55. 跳跃游戏、45.跳跃游戏
    122.买卖股票的最佳时机II题目链接:买卖股票的最佳时机II题目描述:给你一个整数数组 prices ,其中 prices[i] 表示某支股票第 i 天的价格。在每一天,你可以决定是否购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。你也可以先购买,然后在 同一天 出......
  • java数据结构与算法刷题-----LeetCode95. 不同的二叉搜索树 II
    java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846文章目录分治回溯+记忆化搜索分治回溯+记忆化搜索卡特兰数,例如对于n个进栈元素,有多少种出栈顺序,......
  • Numerical Results of iITCGP
    NumericalResultsofTest1       NumericalResultsofTest2 ......