leetcode Third Maximum Number 第三大的数
来源:互联网 发布:mac win7激活工具 编辑:程序博客网 时间:2024/05/22 01:50
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).
题意:给定非空数组,找出第三大的数,若不存在,则输出最大数,要求时间复杂度位O(n)。
1、定义三个变量,分别存储前三大的数,初始化有漏洞,测试用例最小到INT_MIN,故初始化位LLONG_MIN。
class Solution {public: int thirdMax(vector<int>& nums) { long long max = LLONG_MIN; long long second = max; long long third = max; for (int i = 0; i < nums.size(); ++i) { if (max < nums[i]) { third = second; second = max; max = nums[i]; } else if (second < nums[i] && max > nums[i]) { third = second; second = nums[i]; } else if (third <= nums[i] && second > nums[i]) { third = nums[i]; } } if (third != LLONG_MIN) return third; return max; }};
2、利用set容器,自动排序
int thirdMax(vector<int>& nums) { set<int> top3; for (int num : nums) { top3.insert(num); if (top3.size() > 3) top3.erase(top3.begin()); } return top3.size() == 3 ? *top3.begin() : *top3.rbegin();}
阅读全文
0 0
- [LeetCode]414. Third Maximum Number第三大的数
- leetcode Third Maximum Number 第三大的数
- Leetcode 414. Third Maximum Number 第三大的数 解题报告
- leetcode 414. Third Maximum Number 第三大数据
- leetcode_414. Third Maximum Number 返回数组中第三大的数,要求用O(n)的时间复杂度
- LeetCode Third Maximum Number
- LeetCode-Third Maximum Number
- [Leetcode] Third Maximum Number
- LeetCode: Third Maximum Number
- leetcode---Third Maximum Number
- LeetCode : Third Maximum Number
- leetcode[Third Maximum Number]
- LeetCode Third Maximum Number
- leetCode-Third Maximum Number
- LeetCode #414: Third Maximum Number
- leetcode 414. Third Maximum Number
- LeetCode:414. Third Maximum Number
- LeetCode-414. Third Maximum Number
- 网络层:IP协议详解(IP协议真的得看这篇)
- 10-02
- 1002
- LeetCode673. Number of Longest Increasing Subsequence
- 2.9 Object类,包相关
- leetcode Third Maximum Number 第三大的数
- leetcode Guess Number Higher or Lower 猜大小
- go包管理工具-glide使用方法及踩坑记录
- 10.1 国庆 考试
- CPU进程调度简单模拟(PriorityFirst)--Java
- Windows下Redis配置
- mongodb(二):索引基础知识
- nginx处理post请求(http响应包体收发之上游网速优先策略)
- A. Fair Game