1
0
mirror of https://gitee.com/coder-xiaomo/leetcode-problemset synced 2025-01-25 17:50:26 +08:00
Code Issues Projects Releases Wiki Activity GitHub Gitee
leetcode-problemset/leetcode-cn/problem (Chinese)/下一个更大元素 IV [next-greater-element-iv].html

52 lines
2.4 KiB
HTML
Raw Normal View History

2022-11-01 20:43:12 +08:00
<p>给你一个下标从 <strong>0</strong>&nbsp;开始的非负整数数组&nbsp;<code>nums</code>&nbsp;。对于&nbsp;<code>nums</code>&nbsp;中每一个整数,你必须找到对应元素的&nbsp;<strong>第二大</strong>&nbsp;整数。</p>
<p>如果&nbsp;<code>nums[j]</code>&nbsp;满足以下条件,那么我们称它为&nbsp;<code>nums[i]</code>&nbsp;&nbsp;<strong>第二大</strong>&nbsp;整数:</p>
<ul>
<li><code>j &gt; i</code></li>
<li><code>nums[j] &gt; nums[i]</code></li>
<li>恰好存在 <strong>一个</strong>&nbsp;<code>k</code>&nbsp;满足 <code>i &lt; k &lt; j</code>&nbsp;&nbsp;<code>nums[k] &gt; nums[i]</code>&nbsp;</li>
</ul>
<p>如果不存在&nbsp;<code>nums[j]</code>&nbsp;,那么第二大整数为&nbsp;<code>-1</code>&nbsp;</p>
<ul>
<li>比方说,数组&nbsp;<code>[1, 2, 4, 3]</code>&nbsp;中,<code>1</code>&nbsp;的第二大整数是&nbsp;<code>4</code>&nbsp;<code>2</code>&nbsp;的第二大整数是&nbsp;<code>3</code>&nbsp;<code>3</code>&nbsp;<code>4</code>&nbsp;的第二大整数是&nbsp;<code>-1</code>&nbsp;</li>
</ul>
<p>请你返回一个整数数组<em>&nbsp;</em><code>answer</code>&nbsp;,其中<em>&nbsp;</em><code>answer[i]</code><em>&nbsp;</em><code>nums[i]</code>&nbsp;的第二大整数。</p>
<p>&nbsp;</p>
<p><strong>示例 1</strong></p>
<pre>
<b>输入:</b>nums = [2,4,0,9,6]
<b>输出:</b>[9,6,6,-1,-1]
<strong>解释:</strong>
下标为 0 处2 的右边4 是大于 2 的第一个整数9 是第二个大于 2 的整数。
下标为 1 处4 的右边9 是大于 4 的第一个整数6 是第二个大于 4 的整数。
下标为 2 处0 的右边9 是大于 0 的第一个整数6 是第二个大于 0 的整数。
下标为 3 处:右边不存在大于 9 的整数,所以第二大整数为 -1 。
下标为 4 处:右边不存在大于 6 的整数,所以第二大整数为 -1 。
所以我们返回 [9,6,6,-1,-1] 。
</pre>
<p><strong>示例 2</strong></p>
<pre>
<strong>输入:</strong>nums = [3,3]
<b>输出:</b>[-1,-1]
<strong>解释:</strong>
由于每个数右边都没有更大的数,所以我们返回 [-1,-1] 。
</pre>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li><code>1 &lt;= nums.length &lt;= 10<sup>5</sup></code></li>
<li><code>0 &lt;= nums[i] &lt;= 10<sup>9</sup></code></li>
</ul>