对文本文件进行排序

时间:2015-04-28 03:08:02

标签: c++ string sorting

最有效的方法是对包含数百万字符串的文件进行排序?

我知道如何做到这一点,如果它是一个包含数百万个文件的文件。

如果是字符串,如何修改我们的方法? 或任何新的方法?

1 个答案:

答案 0 :(得分:-2)

首先将所有文件加载到内存中,然后使用std::sort

您可以这样做:

std::fstream MyFile("MyFile.txt",ios_base::in);
std::vector<std::string>MyStrings;
while(MyFile.eof()==0){
    std::stringstream MyBuffer;
    MyBuffer<<MyFile;
    MyStrings.push_back(MyBuffer.str())
}
std::sort(MyStrings.begin(),MyStrings.end()); //no need for compare function because it exsits for std::string