我有一个包含特定结构的大文件。我想知道结构中特定字段的前 10 个最常出现的值。我可以在一次解析中完成吗?
问问题
45 次
1 回答
1
您需要存储和更新包含字段和出现次数的关联数组。根据有多少不同的字段,您的记忆将成为限制。
完成后,根据值对数组进行排序。
AFAIK,C 不包括关联数组数据类型,因此您需要使用 3rd 方库,请参阅寻找 C 中的良好哈希表实现以获取一些选项。
至于排序,有http://linux.die.net/man/3/qsort。
因此,忽略可能的内存要求,您可以一次性完成。
于 2012-04-12T06:11:18.510 回答