Java BWT流程通常需要多长时间

Java BWT流程通常需要多长时间,java,time,complexity-theory,Java,Time,Complexity Theory,我知道时间复杂度为O(n^2),但有人知道,用目前最常用的方法,转换一个(比如)2000万文本文件,在实践中通常需要多长时间?谢谢。BWT的瓶颈通常是排序步骤(O(n2))。然而,与线性时间相比,快速实现依赖于后缀排序(例如后缀数组归纳排序)。 此外,区块的大小也很重要。 最后,实现细节很重要 但是,为了给你一个大概的估计,这里是我的块压缩器(BWT+MTFT+ZLT+Huffman)在Windows7系统上的运行(块大小为1MB),该系统采用Intel Core i7@3.4 GHz。 代码可

我知道时间复杂度为O(n^2),但有人知道,用目前最常用的方法,转换一个(比如)2000万文本文件,在实践中通常需要多长时间?谢谢。

BWT的瓶颈通常是排序步骤(O(n2))。然而,与线性时间相比,快速实现依赖于后缀排序(例如后缀数组归纳排序)。 此外,区块的大小也很重要。 最后,实现细节很重要

但是,为了给你一个大概的估计,这里是我的块压缩器(BWT+MTFT+ZLT+Huffman)在Windows7系统上的运行(块大小为1MB),该系统采用Intel Core i7@3.4 GHz。 代码可在以下位置获得:http://code.google.com/p/kanzi/

请记住,单独使用BWT步骤会更快

编码

档案大小:57795262 编码耗时7061毫秒 比率:0.28658637 编码:16563336 槽口(KB/s):7993

解码

解码耗时2712ms 解码:57795262 槽口(KB/s):20811