【剑指offer】面试题39:数组中出现次数超过一半的数字
数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。
你可以假设数组是非空的,并且给定的数组总是存在多数元素。
示例 1:
输入: [1, 2, 3, 2, 2, 2, 5, 4, 2]
输出: 2
代码:
class Solution {
public int majorityElement(int[] nums) {
if(nums.length==0)
{
return 0;
}
int result = nums[0];
int count=0;
for(int i=0;i<nums.length;i++)
{
if(count==0&&i!=0)
{
result = nums[i];
}
if(nums[i]==result)
{
count++;
}
else
{
count--;
}
}
return result;
}
}
【剑指offer】面试题39:数组中出现次数超过一半的数字相关推荐
- 剑指offer面试题39. 数组中出现次数超过一半的数字(数组)(摩尔投票法)
题目描述 **数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字. 你可以假设数组是非空的,并且给定的数组总是存在多数元素.** 思路 详见链接 代码 class Solution:def ...
- 剑指offer面试题[29]-数组中出现次数超过一半的数字
题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字.例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2. ...
- 【剑指Offer】28、数组中出现次数超过一半的数字
题目描述: 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字. 例如:输入如下所示的一个长度为9的数组{1,2,3,2,2,2,5,4,2}.由于数字2在数组中出现了5次,超过 ...
- 剑指offer:面试题39. 数组中出现次数超过一半的数字
题目:面试题39. 数组中出现次数超过一半的数字 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字. 你可以假设数组是非空的,并且给定的数组总是存在多数元素. 示例 1: 输入: [1, ...
- 【剑指offer-Java版】29数组中出现次数超过一半的数字
数组中出现次数超过一半的数字 两种思路: 思路一:由于出现次数超过一半,所以如果对这个数组进行划分之后无论如何,位于数组下标 n/2的数字就是出现次数超过一半的数 所以问题就转换为了求划分一次之后 位 ...
- 【LeetCode】剑指 Offer 39. 数组中出现次数超过一半的数字
[LeetCode]剑指 Offer 39. 数组中出现次数超过一半的数字 文章目录 [LeetCode]剑指 Offer 39. 数组中出现次数超过一半的数字 一.摩尔投票法 一.摩尔投票法 核心理 ...
- 剑指 Offer 39. 数组中出现次数超过一半的数字
剑指 Offer 39. 数组中出现次数超过一半的数字https://leetcode.cn/problems/shu-zu-zhong-chu-xian-ci-shu-chao-guo-yi-ban ...
- 剑指offer面试题[40]-数组中只出现一次的数字
题目描述 一个整型数组里除了两个数字之外,其他的数字都出现了两次.请写程序找出这两个只出现一次的数字. 注意原题目要求空间复杂度为0(1). 位运算的具体思路可以参看剑指offer. class So ...
- 剑指Offer - 面试题3. 数组中重复的数字(哈希)
1. 题目 找出数组中重复的数字. 在一个长度为 n 的数组 nums 里的所有数字都在 0-n-1 的范围内.数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次.请找出数组 ...
- 剑指offer 面试题03. 数组中重复的数字
找出数组中重复的数字. 在一个长度为 n 的数组 nums 里的所有数字都在 0-n-1 的范围内.数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次.请找出数组中任意一个重 ...
最新文章
- 点石关键词排名优化软件_关键词点击排名优化
- Can't read [proguard.ClassPathEntry@1a0c10f] (No such file or directory)
- 一套代码小程序WebNative运行的探索02
- solaris 10 安装oracle 10g
- 20164319 刘蕴哲 Exp9 Web安全基础
- Linux学习笔记4-CentOS7中redis3.2.9安装教程
- 双端堆c语言,数据结构——双端堆(C语言)
- java修改默认字符编码_设置默认的Java字符编码?
- java实现从键盘上输入学生考试的科目和学生的每科分数,输出总分、最高分、最低分、平均分
- 怎么用追 MM 来理解 23 种设计模式?
- 随机森林回归预测r语言_R包randomForest的随机森林回归模型以及对重要变量的选择...
- 【180629】VC++ QQ头像连连看游戏源码
- linux 指令安装显卡驱动,Linux 16.04 LTS 安装显卡驱动
- 计算机电脑键盘英语,知识整理:计算机键盘指法练习(英语+数字)
- 职位介绍之硬件工程师(提升宝典)
- 2019年新个税计算器及源代码
- 网络摄像视频方案整理
- 求集合中最大值、最小值、和
- cookies、sessions、token区别
- School English(转帖)
热门文章
- LeetCode 1427. 字符串的左右移
- 朴素贝叶斯法(Naive Bayes,NB)
- 数据结构--链表--LRU缓存
- 映射表map(平衡二叉树实现)_手动实现Java集合容器之TreeMap(上)
- 数据库实例:用户注册
- Matplotlib - 箱线图、箱型图 boxplot () 所有用法详解
- 吴恩达发起新型竞赛范式!模型固定,只调数据?!
- CVPR 2019轨迹预测竞赛冠军方法总结
- 论文浅尝 | 基于对抗学习的弱监督知识图谱对齐
- 阿里云开源EasyTransfer:业界首个面向NLP场景深度迁移学习框架