Majority Element:主元素
来源:互联网 发布:上瘾网络剧见面会 编辑:程序博客网 时间:2024/04/29 10:21
Given an array of size n, find the majority element. The majority element is the element that appears more than ⌊ n/2 ⌋
times.
You may assume that the array is non-empty and the majority element always exist in the array.
求主元素:包含n个元素的数组中,如果一个元素的出现次数大于n/2(向下取整)次,则该元素为主元素。
根据定义,则每两个数中必有一个是主元素,设定一个变量cnt=0,当两个数相同时,cnt++,不同时,cnt--。用变量
majority来记录主元素,每当cnt=0时,把当前元素赋给majority,成为候选的主元素,这样一来,最后的majority的值一定就是主元素。
代码如下:
class Solution {public:int majorityElement(vector<int> &num) { int majority; int cnt = 0; for(int i=0; i<num.size(); i++){ if ( cnt ==0 ){ majority = num[i]; cnt++; }else{ majority == num[i] ? cnt++ : cnt --; if (cnt > num.size()/2) return majority; } } return majority;}};
1 0
- Majority Element:主元素
- 169. Majority Element | 数组中的主元素
- Majority Element / Majority Element 2-主要元素
- Majority Element 主要的元素
- 169. Majority Element (寻找多数元素)
- Majority Element众数元素的解法分析
- [LeetCode] Majority Element 最主要的元素
- [LeetCode]169. Majority Element(多数元素)
- 169. Majority Element 查找多数元素
- 【LeetCode-面试算法经典-Java实现】【169-Majority Element(主元素)】
- majority element
- Majority Element
- Majority Element
- Majority Element
- Majority Element
- Majority Element
- Majority Element
- Majority Element
- 当你输入一个网址的时候,实际会发生什么?
- 【笔试】10、一球从100米高度自由落下,求相关数据
- LightOJ 1269 Consecutive Sum(字典树)
- 剑指offer_面试题14_调整数组顺序使奇数位于偶数前面(函数指针用法)
- 神经网络编程入门
- Majority Element:主元素
- JAVA反射机制实际代码解释
- 连接查询及分组查询强化练习
- 电感绕制方法小结
- Android四大组件之四:BroadcastReceiver 广播接收器
- MSBuild\Microsoft.Cpp\v4.0\Microsoft.CppCommon.targets(562,5): error MSB6006: “mt.exe”已退出,代码为 5
- Leetcode Exercise
- JAVA强制类型转换
- 诚信胜过生命