LeetCode 169. Majority Element

xiaoxiao2021-02-28  73

最近开始刷题,从easy开始。刚看到这道题的想法是用双轨制记录位置再进行遍历。代码如下:

class Solution {

public:     int majorityElement(vector<int>& nums) {                 int j=0,sum=0;         sort(nums.begin(),nums.end());        while(j<nums.size()){            for(int i=j+1; i<nums.size();i++)         {             if(nums[i]==nums[j]) {sum++;j=i;}                      }           if(sum>=nums.size()/2) return nums[j];            else {sum=0;j++;}         }     }

};

后来提交之后看了答案才发现有更简单的方法:

  sort(nums.begin(), nums.end());         return nums[nums.size()/2];

以后还是应该先考虑清楚后再打代码,不要上来就开始写。

转载请注明原文地址: https://www.6miu.com/read-56026.html

最新回复(0)