我们希望找到一个随机字符串,例如:"ASDF555"
。我们有一个非常大的文件,其中包含此字符串的唯一行。哪一个更快(及时,使用简单的grep命令)来查找提到的字符串?如果“BIG文件”是:
当然,ASDF555可以是任何东西!
我们正在考虑以随机顺序排列这些行更快,因为字符串也可以是随机的。但我们不能证明这个想法..
答案 0 :(得分:0)
grep
没有"知道"你的文件是排序的,所以它需要逐行检查 - 所以它排序的事实是无关紧要的。换句话说 - 文件排序的事实不会损害您的搜索速度 - 您也可以逐行查看文件,直到找到所需的字符串。
但是,如果文件确实已排序,您可以实现更好的搜索算法(例如,二进制搜索),而不是使用grep
。