1
0
mirror of https://gitee.com/coder-xiaomo/leetcode-problemset synced 2025-01-10 18:48:13 +08:00
Code Issues Projects Releases Wiki Activity GitHub Gitee
leetcode-problemset/leetcode-cn/problem (Chinese)/排序方式 [sort-by].html
2023-06-12 23:05:37 +08:00

40 lines
1.5 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>arr</code> 和一个函数 <code>fn</code>,返回一个排序后的数组 <code>sortedArr</code>。你可以假设 <code>fn</code> 只返回数字,并且这些数字决定了 <code>sortedArr</code> 的排序顺序。<code>sortedArr</code> 必须按照 <code>fn</code> 的输出值&nbsp;<strong>升序</strong> 排序。</p>
<p>你可以假设对于给定的数组,<code>fn</code> 不会返回重复的数字。</p>
<p>&nbsp;</p>
<p><strong class="example">示例 1</strong></p>
<pre>
<b>输入:</b>arr = [5, 4, 1, 2, 3], fn = (x) =&gt; x
<b>输出:</b>[1, 2, 3, 4, 5]
<b>解释:</b>fn 只是返回传入的数字,因此数组按升序排序。
</pre>
<p><strong class="example">示例 2</strong></p>
<pre>
<b>输入:</b>arr = [{"x": 1}, {"x": 0}, {"x": -1}], fn = (d) =&gt; d.x
<b>输出:</b>[{"x": -1}, {"x": 0}, {"x": 1}]
<b>解释:</b>fn 返回 "x" 键的值,因此数组根据该值排序。
</pre>
<p><strong class="example">示例 3</strong></p>
<pre>
<b>输入:</b>arr = [[3, 4], [5, 2], [10, 1]], fn = (x) =&gt; x[1]
<b>输出:</b>[[10, 1], [5, 2], [3, 4]]
<b>解释:</b>数组按照索引为 1 处的数字升序排序。
</pre>
<p>&nbsp;</p>
<p><strong>提示:</strong></p>
<ul>
<li><code>arr 是一个有效的 JSON 数组</code></li>
<li><code>fn 是一个函数,返回一个数字</code></li>
<li><code>1 &lt;=&nbsp;arr.length &lt;= 5 * 10<sup>5</sup></code></li>
</ul>