2017年12月18日 星期一

[LeetCode] 414. Third Maximum Number

轉自LeetCode

Given a non-empty array of integers, return the third maximum number in this array. If it does not exist, return the maximum number. The time complexity must be in O(n).
Example 1:
Input: [3, 2, 1]

Output: 1

Explanation: The third maximum is 1.
Example 2:
Input: [1, 2]

Output: 2

Explanation: The third maximum does not exist, so the maximum (2) is returned instead.
Example 3:
Input: [2, 2, 3, 1]

Output: 1

Explanation: Note that the third maximum here means the third maximum distinct number.
Both numbers with value 2 are both considered as second maximum.
<Solution>

C++ 可以使用 set 這個資料結構,會主動排序

因此,只要 set 的大小大於三,就把最小的砍掉

code 如下

C++

沒有留言:

張貼留言