找到二进制字符串中最大的零运行的高效算法?

MCT*_*MCT 5 python algorithm

我正在寻找一种有效的算法来找到二进制字符串中最长的零运行.我的实现是在Python 2.7中,但我需要的只是算法的概念.

例如,给定'0010011010000',函数应返回4.

Thi*_*ilo 8

我不认为有什么比在字符串上单次传递更好,计算当前序列长度(并更新最大值).

如果通过"二进制字符串"表示原始位,则可以一次读取一个字节并在其中提取8位(使用位移或屏蔽).这不会改变整体算法或其复杂性.