求救 有什么推荐的算法吗

  • 碰到一个难题,有500万组数据,一组数据的个数大概在1-200之间,要按照频次对这200个数当中的组合出现的次数由多到少进行排序。这算法要怎么实现,自己写了一套,跑了一天没出结果

200个数是下面截图当中这种形式的数组组合,200个是指截图当中的一行有200个,例如截图的第一行是3个

然后这一行200个是从大概3000个样本当中挑出来的

排序是指一行200个当中挑出来的A+B,或者A+B+C+....+ 的排序

例如第一行当中的064475 与411609 ,064475与064487,411609与064487,064475 与411609 与 064487 这4种每种在500条中的出现的次数,然后每一行有与第一行不同的组合,都要统计出次数,然后最后整个进行排序

 

200个数的组合?是怎么组合的?200个数是什么类型的数据。

你的意思是 一组数据例如 1,2,3,4,5 这样算是一个组合,找到 500w 组数据中,组合出现的次数,然后再根据出现的次数排序?要不然你把你的代码贴出来吧,你这样也说不清楚呀。

这种题目上哈希表,先把查询时间压缩到线性时间,不然你需要排序,查询都要花很久时间。先建立好哈希表,后面的好办很多

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

你的问题都很模糊,能重新整理下你的问题吗?你的问题实在难以让人理解你具体要求的是什么

非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!

速戳参与调研>>>https://t.csdnimg.cn/Kf0y