做个小题轻松一下~
求众数
这道题空间限制极小,不能开数组,所以想到将每个数与他不同的数抵消掉,那剩下的就是众数.
#include<stdio.h>
int n,t,tot,x;
int main(){
scanf("%d",&n);
for(int i=1;i<=n;i++){
scanf("%d",&x);
if(x==t) tot++;
else if(!tot){tot++;t=x;}
else tot--;
}
printf("%d",t);
}
本文介绍了一种在极小空间限制下求解众数的有效算法。该算法通过将每个数与其不同的数相互抵消的方式找到数据中的众数,并提供了一个使用C语言实现的具体示例。
643

被折叠的 条评论
为什么被折叠?



