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
2022-03-29 12:43:11 +08:00

45 lines
2.7 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<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>