博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Majority Element
阅读量:6697 次
发布时间:2019-06-25

本文共 1064 字,大约阅读时间需要 3 分钟。

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.

题目大意:

找出数组中超过一半的数。

 

C++实现代码:

#include
#include
using namespace std;class Solution {public: int majorityElement(vector
&num) { if(num.empty()) return -1; int n=num.size(); int i; int index=0; int count=1; for(i=1;i
num={
3,3,3,3,3,3,1,2,4,5,3,45,2,54}; Solution s; cout<
<

 

#include
#include
using namespace std;class Solution {public: int majorityElement(vector
&num) { if(num.empty()) return -1; int n=num.size(); int major=num[0]; int i; int count=1; for(i=1;i
num={3,3,3,3,3,3,1,2,5,3,45,2,54}; Solution s; cout<
<

 如果要找当好出现一半的数呢?此时这个数可能是通过上面的办法找到的那个数,也可能是最后一个数,因此,只需要再次遍历数组,找出与最后一个数相等的数的个数,如果小于一半,那么上面找出的数就是刚好出现一半的数,否则最后一个数是刚好出现一半的数。

 

转载地址:http://uxloo.baihongyu.com/

你可能感兴趣的文章
Java程序员从笨鸟到菜鸟之(五)java开发常用类(包装,数字处理集合等)(下)...
查看>>
收集整理的非常有用的PHP函数
查看>>
css3图标悬停导航菜单
查看>>
我的友情链接
查看>>
Android中实时视频传输(摄像头实时视频传输)解决方案<二>
查看>>
开启Swarm集群以及可视化管理
查看>>
sql完整性
查看>>
Permissions for id_rsa are too open
查看>>
outlook 2007 自动答复邮件
查看>>
编辑器
查看>>
TortoiseSVN检出链接(可用于与站点集成)
查看>>
我的友情链接
查看>>
[C++]MySQL数据库操作实例
查看>>
RedHat Linux 5.5系统下配置yum包详细过程
查看>>
替换WordPress调用的Google前端库为360镜像的库
查看>>
Nginx服务器证书部署-亚洲诚信
查看>>
linux shell 上传,下载ftp文件
查看>>
我的友情链接
查看>>
oracle11g安装脚本
查看>>
linux下搭建FTP服务器
查看>>