1. 169

majority-element/


2. 算法

http://www.cnblogs.com/ganganloveu/p/4177690.html

  • O(N)

每找出两个不同的element,则成对删除。最终剩下的一定就是所求的。


3. 代码


class Solution {

public:

    int majorityElement(vector<int>& nums) {

        int candidate = 0;

        int count = 0;

        for(int i = 0; i < nums.size(); i ++)

        {

            if(count == 0)

            {

                candidate = nums[i];

                count = 1;

            }

            else

            {

                if(nums[i] == candidate)

                    count ++;

                else

                    count --;

            }

        }

        return candidate;

    }

};

results matching ""

    No results matching ""