Skip to content

Latest commit

 

History

History
99 lines (66 loc) · 3.36 KB

01.03.07-Exercises.md

File metadata and controls

99 lines (66 loc) · 3.36 KB

01.03.07 练习题目(第 06 天)

1.1 题目大意

描述:给定一个长度为 $n$ 的数组 $score$。其中 $score[i]$ 表示第 $i$ 名运动员在比赛中的成绩。所有成绩互不相同。

要求:找出他们的相对名次,并授予前三名对应的奖牌。前三名运动员将会被分别授予「金牌("Gold Medal")」,「银牌("Silver Medal")」和「铜牌("Bronze Medal")」。

说明

  • $n == score.length$
  • $1 \le n \le 10^4$
  • $0 \le score[i] \le 10^6$
  • $score$ 中的所有值互不相同。

示例

  • 示例 1:
输入score = [5,4,3,2,1]
输出:["Gold Medal","Silver Medal","Bronze Medal","4","5"]
解释名次为 [1st, 2nd, 3rd, 4th, 5th] 。
  • 示例 2:
输入score = [10,3,8,9,4]
输出:["Gold Medal","5","Bronze Medal","Silver Medal","4"]
解释名次为 [1st, 5th, 3rd, 2nd, 4th] 。

2.1 题目大意

描述:给定两个有序数组 $nums1$、$nums2$。

要求:将 $nums2$ 合并到 $nums1$ 中,使 $nums1$ 成为一个有序数组。

说明

  • 给定数组 $nums1$ 空间大小为$ m + n$ 个,其中前 $m$ 个为 $nums1$ 的元素。$nums2$ 空间大小为 $n$。这样可以用 $nums1$ 的空间来存储最终的有序数组。
  • $nums1.length == m + n$
  • $nums2.length == n$
  • $0 \le m, n \le 200$
  • $1 \le m + n \le 200$
  • $-10^9 \le nums1[i], nums2[j] \le 10^9$

示例

  • 示例 1:
输入nums1 = [1,2,3,0,0,0], m = 3, nums2 = [2,5,6], n = 3
输出:[1,2,2,3,5,6]
解释需要合并 [1,2,3]  [2,5,6] 。
合并结果是 [1,2,2,3,5,6] ,其中斜体加粗标注的为 nums1 中的元素
  • 示例 2:
输入nums1 = [1], m = 1, nums2 = [], n = 0
输出:[1]
解释需要合并 [1]  [] 。
合并结果是 [1] 。

3.1 题目大意

描述:给定一个数组 $nums$

要求:计算出数组中的逆序对的总数。

说明

  • 逆序对:在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。
  • $0 \le nums.length \le 50000$

示例

  • 示例 1:
输入: [7,5,6,4]
输出: 5

习题解析

  1. 0506. 相对名次」习题解析:网页链接Github 链接
  2. 0088. 合并两个有序数组」习题解析:网页链接Github 链接
  3. 剑指 Offer 51. 数组中的逆序对」习题解析:网页链接Github 链接