一组文件中的实际平均文件大小

发布于 2024-08-24 15:30:36 字数 299 浏览 6 评论 0原文

我有一个明显“简单”的问题,但由于某种原因我找不到解决方案......
我有 n 百万个不同大小的文件,我想找到平均文件大小。
为了简化,我将它们按 16KB 的倍数分组。


16 KB = 18689546 个文件
< 32 KB = 1365713 个文件
< 48 KB = 1168186 个文件
...

当然,简单的(total_size/文件数)是行不通的。平均为 291KB...
计算实际平均值的算法是什么?

谢谢, 京东

I have an apparently "simple" problem but I can't find the solution for some reason...
I have n millions files of different sizes and I want to find the average filesize.
To simplify it, I grouped them in multiples of 16KB.

< 16 KB = 18689546 files
< 32 KB = 1365713 files
< 48 KB = 1168186 files
...

Of course, the simple (total_size / number of files) does not work. It gives an average of 291KB...
What would be the algorithm to calculate the real average...?

Thx,
JD

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

川水往事 2024-08-31 15:30:36

在对文件大小求和时,您可能会遇到溢出问题(总大小可能不适合 32 位值)。最简单的解决方法可能是尝试使用 64 位 int 作为保存总和的变量。

You might be running into a problem with overruns when summing the file sizes (the total size probably doesn't fit into a 32-bit value). The easiest fix might be to try using a 64-bit int for the variable that's holding the sum.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文