File tree Expand file tree Collapse file tree 2 files changed +45
-0
lines changed
longest-consecutive-sequence Expand file tree Collapse file tree 2 files changed +45
-0
lines changed Original file line number Diff line number Diff line change 1+ class Solution {
2+ public:
3+ int longestConsecutive (vector<int >& nums) {
4+ if (nums.size () == 0 ) return 0 ;
5+ set<int > us{nums.begin (), nums.end ()};
6+ int ret = 1 ;
7+ vector<int > vec (us.begin (), us.end ());
8+ int prevNum = vec[0 ];
9+ int ret_candi = 1 ;
10+ for (int i = 1 ; i < vec.size (); i++){
11+ if (vec[i] - vec[i-1 ] == 1 ){
12+ ret_candi++;
13+ ret = max (ret, ret_candi);
14+ continue ;
15+ } else {
16+ ret_candi = 1 ;
17+ continue ;
18+ }
19+ }
20+
21+ return ret;
22+ }
23+ };
Original file line number Diff line number Diff line change 1+ class Solution {
2+ public:
3+ vector<int > topKFrequent (vector<int >& nums, int k) {
4+ // value, count
5+ unordered_map<int , int > um;
6+ for (auto & n : nums){
7+ um[n]++;
8+ }
9+
10+ // value, count
11+ vector<std::pair<int , int >> vec (um.begin (), um.end ());
12+ sort (vec.begin (), vec.end (),
13+ [](const auto & a, const auto & b) { return a.second > b.second ;});
14+
15+ vector<int > ret;
16+ for (int i=0 ; i< k; i++){
17+ ret.push_back (vec[i].first );
18+ }
19+
20+ return ret;
21+ }
22+ };
You can’t perform that action at this time.
0 commit comments