首页 > 试题广场 >

假如让你对总量为500G的文件(单个文件约为1M)进行去重,

[问答题]

假如让你对总量为500G的文件(单个文件约为1M)进行去重,你会怎么做,简述理由和考虑。

布隆过滤器原理
发表于 2022-08-26 16:11:49 回复(0)
归并排序不太可取,由于500G内存已经很大,归并排序的空间复杂度为O(n),采用归并排序意味着还需要有一个至少500G的内存。
可以采用空间复杂度为O(1)的同时时间复杂度为O(nlogn)的非递归版堆排序或者希尔排序对500G内存按大小排序;
内存大小不一样的文件肯定不是同一文件,之后再对内存大小相同的文件进行去重操作即可。
编辑于 2019-05-03 17:32:44 回复(0)
归并排序所有小文件,归并的过程中去重
根据内存大小确定排序树的数量
发表于 2019-04-05 11:40:03 回复(0)