首页 > 编程语言 > 详细

寻找数组中出现次数超过一半的数字

时间:2018-04-20 21:44:44      阅读:143      评论:0      收藏:0      [点我收藏+]
/*
 * 数组中出现次数超过一半的数字.cpp
 *
 *  Created on: 2018年4月20日
 *      Author: soyo
 */
#include<iostream>
using namespace std;
int MoreNum(int *p,int length)
{
    if(p==NULL)
        return NULL;
    int result=p[0];
    int time=1;
    for(int i=1;i<length;i++)
    {
        if(time==0)
        {
            result=p[i];
            time=1;
        }
        else if(p[i]==result)
             time++;
        else
            time--;
    }
    return result;
}

int main()
{
    int a[]={1,5,3,5,8,5,5,5,7,5,8};
    int num;
    num=MoreNum(a,9);
    cout<<"数组中出现次数超过一半的数字为:"<<num<<endl;
    int b[]={8,7,3,54};
    int *p;
    p=b;
    cout<<p[3]<<endl;

}

结果:

数组中出现次数超过一半的数字为:5
54

 

寻找数组中出现次数超过一半的数字

原文:https://www.cnblogs.com/soyo/p/8893557.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!