如何在字节数组中有效地找到四字节序列的第一个实例的位置?是否有比循环遍历整个数组或内置方法更有效的东西?
我在一个字节数组中搜索一对CrLF
。我不能首先将它转换为InStr
的字符串,因为我需要它在原始字节数组中的位置。
我试图找出它的位置,因为它在字符串部分和二进制部分之间划分,类似(好,就像它的这一部分一样)到HTTP头。在内容开始之前有一个字符串部分和两个CrLf
。
答案 0 :(得分:1)
假设没有关于数据集(排序/特殊排序),你可以做的最好的是O(n)算法,这意味着要查看整个数组一次。
答案 1 :(得分:1)
你可以使用Boyer-Moore的算法,这比平均值更好。
HTH!