课堂练习之找水王
2015-04-21 14:53
176 查看
一、题目要求
如果你有一张当前论坛的帖子列表,其中他帖子的作者ID也在其中,快速找出这个传说中的水王
二、解题思路
在遍历数组的时候保存两个值:一个是数组中的一个数字,一个是次数。当我们遍历到下一个数字的时候,如果下一个数字和我们之前保存的数字相同,则次数加1。
如果下一个数字和我们之前保存的数字不同,则次数减1。如果次数为零,我们需要保存下一个数字,并把次数重新设为1。
三、程序源码
四、运行截图
如果你有一张当前论坛的帖子列表,其中他帖子的作者ID也在其中,快速找出这个传说中的水王
二、解题思路
在遍历数组的时候保存两个值:一个是数组中的一个数字,一个是次数。当我们遍历到下一个数字的时候,如果下一个数字和我们之前保存的数字相同,则次数加1。
如果下一个数字和我们之前保存的数字不同,则次数减1。如果次数为零,我们需要保存下一个数字,并把次数重新设为1。
三、程序源码
#include<iostream> using namespace std; int Find(int *a,int N) //a代表数组,N代表数组长度 { int wk; int ntimes,i; for(i=ntimes=0;i<N;i++) { if(ntimes==0) { wk=a[i],ntimes=1; } else { if(wk==a[i]) ntimes++; else ntimes--; } } return wk; } int main() { cout<<"水王的ID为:"; int a[5]={0,2,1,2,2}; int *n=a; cout<<Find(a,5)<<endl; return 0; }
四、运行截图
相关文章推荐
- 2017/3/30课堂小练习-------XXX系统(链表插入删除打印)
- 课堂练习js猜谜语
- 课堂练习:返回一个整数数组中最大子数组的和
- 《C++沉思录》-第九章-- 一个课堂练习的分析(上)
- CCNA课堂练习:OSPF的介绍及配置
- 软件工程课堂练习找水王
- CCNA课堂练习:控制访问列表(ACCESS LIST)
- 课堂练习
- 课堂练习3: 定义一个平面中的Circle类
- 对象的组合 课堂练习4
- 结对开发--课堂练习--c++
- 课堂练习-促销书
- 课堂练习之《买书》
- 课堂练习4
- 课堂练习3(第四周)
- 课堂练习之买书打折最便宜
- 4月17号周五课堂练习:用户场景分析
- 课堂练习——找水王
- 课堂练习--找“水王”