1
0
mirror of https://gitee.com/coder-xiaomo/leetcode-problemset synced 2025-01-11 02:58:13 +08:00
Code Issues Projects Releases Wiki Activity GitHub Gitee
leetcode-problemset/leetcode-cn/problem (Chinese)/下一个更大元素 I [next-greater-element-i].html

45 lines
2.7 KiB
HTML
Raw Normal View History

2022-03-27 20:52:13 +08:00
<p><code>nums1</code>&nbsp;中数字&nbsp;<code>x</code>&nbsp;<strong>下一个更大元素</strong> 是指&nbsp;<code>x</code>&nbsp;&nbsp;<code>nums2</code> 中对应位置 <strong>右侧</strong><strong>第一个</strong>&nbsp;<code>x</code><strong>&nbsp;</strong>大的元素。</p>
<p>给你两个<strong> 没有重复元素</strong> 的数组&nbsp;<code>nums1</code>&nbsp;<code>nums2</code> ,下标从 <strong>0</strong> 开始计数,其中<code>nums1</code>&nbsp;&nbsp;<code>nums2</code>&nbsp;的子集。</p>
<p>对于每个 <code>0 &lt;= i &lt; nums1.length</code> ,找出满足 <code>nums1[i] == nums2[j]</code> 的下标 <code>j</code> ,并且在 <code>nums2</code> 确定 <code>nums2[j]</code><strong>下一个更大元素</strong> 。如果不存在下一个更大元素,那么本次查询的答案是 <code>-1</code></p>
<p>返回一个长度为&nbsp;<code>nums1.length</code> 的数组<em> </em><code>ans</code><em> </em>作为答案,满足<em> </em><code>ans[i]</code><em> </em>是如上所述的 <strong>下一个更大元素</strong></p>
<p>&nbsp;</p>
<p><strong>示例 1</strong></p>
<pre>
<strong>输入:</strong>nums1 = [4,1,2], nums2 = [1,3,4,2].
<strong>输出:</strong>[-1,3,-1]
<strong>解释:</strong>nums1 中每个值的下一个更大元素如下所述:
- 4 用加粗斜体标识nums2 = [1,3,<strong>4</strong>,2]。不存在下一个更大元素,所以答案是 -1 。
- 1 用加粗斜体标识nums2 = [<em><strong>1</strong></em>,3,4,2]。下一个更大元素是 3 。
- 2 用加粗斜体标识nums2 = [1,3,4,<em><strong>2</strong></em>]。不存在下一个更大元素,所以答案是 -1 。</pre>
<p><strong>示例 2</strong></p>
<pre>
<strong>输入:</strong>nums1 = [2,4], nums2 = [1,2,3,4].
<strong>输出:</strong>[3,-1]
<strong>解释:</strong>nums1 中每个值的下一个更大元素如下所述:
- 2 用加粗斜体标识nums2 = [1,<em><strong>2</strong></em>,3,4]。下一个更大元素是 3 。
- 4 用加粗斜体标识nums2 = [1,2,3,<em><strong>4</strong></em>]。不存在下一个更大元素,所以答案是 -1 。
</pre>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li><code>1 &lt;= nums1.length &lt;= nums2.length &lt;= 1000</code></li>
<li><code>0 &lt;= nums1[i], nums2[i] &lt;= 10<sup>4</sup></code></li>
<li><code>nums1</code><code>nums2</code>中所有整数 <strong>互不相同</strong></li>
<li><code>nums1</code> 中的所有整数同样出现在 <code>nums2</code></li>
</ul>
<p>&nbsp;</p>
<p><strong>进阶:</strong>你可以设计一个时间复杂度为 <code>O(nums1.length + nums2.length)</code> 的解决方案吗?</p>