在C中寻找Ints向量的模式

在C中寻找Ints向量的模式,第1张

概述所以我正在尝试制作一个基本程序来学习C的基础知识,我从0到100生成100个随机数并将它们存储在一个向量中,然后我显示总和,均值,中位数,模式,高和矢量低.除了我被卡住的模式之外,我还完成了其他所有工作.这是我到目前为止的代码. int modeFunction() { numMode = 0; count = 0; for (int 所以我正在尝试制作一个基本程序来学习C的基础知识,我从0到100生成100个随机数并将它们存储在一个向量中,然后我显示总和,均值,中位数,模式,高和矢量低.除了我被卡住的模式之外,我还完成了其他所有工作.这是我到目前为止的代码.
int modefunction()     {         numMode = 0;         count = 0;         for (int n = 0; n < 100; n++)         {             for (int y = 0; y < 100; y++)             {                 if (numVector.at(y) == numVector.at(n))                {                    numMode = numVector.at(y);                    count++;                }             }         }         return numMode;     }

在那之后我陷入困境,因为在我看来它应该有效,但事实并非如此.它只是输出最后一个数字,通常为100.任何帮助都会非常感激.

解决方法 由于所有值都在0到100之间,因此您可以使用直方图有效地找到模式:
std::vector<int> histogram(101,0);for( int i=0; i<100; ++i )  ++histogram[ numVector[i] ];return std::max_element( histogram.begin(),histogram.end() ) - histogram.begin();
总结

以上是内存溢出为你收集整理的在C中寻找Ints向量的模式全部内容,希望文章能够帮你解决在C中寻找Ints向量的模式所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1241629.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-06
下一篇 2022-06-06

发表评论

登录后才能评论

评论列表(0条)

保存