在常州青之锋做网站客服怎么样四川seo优化
目录
- 题目
- 1- 思路
- 2- 实现
- ⭐169. 多数元素——题解思路
- 3- ACM 实现
题目
- 原题连接:169. 多数元素
1- 思路
- 定义两个变量
- 一个是
count:维护当前元素的出现次数 - 一个是
ret:维护当前元素
- 一个是
思路
- 遍历整个数组
- **①如果
count = 0**:ret = i,ret 赋值为当前遍历到的元素,且count=1 - ②如果
ret == i:此时count++ - **③如果 **
ret != i:此时count--
2- 实现
⭐169. 多数元素——题解思路

class Solution {public int majorityElement(int[] nums) {int count = 0;int candidate = 0;for(int num:nums){if(count==0){candidate = num;}count += (num == candidate) ? 1 : -1;}return candidate;}
}
3- ACM 实现
public class majorityElement {public static int majorE(int[] nums){int candidate = 0;int count = 0;for(int num : nums){if(count==0){candidate = num;}count += (candidate==num) ?1:-1;}return candidate;}public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("输入数组长度");int n = sc.nextInt();int[] nums = new int[n];for (int i = 0 ; i < n;i++){nums[i] = sc.nextInt();}System.out.println("结果是"+majorE(nums));}
}
