Pau*_*aul 15
从左到右扫描阵列,保持空白计数.当您到达非空白字符时,请检查该计数与当前最大值; 如果它更高,它将成为新的最大值.跳过数组中的最大数字 - 如果不是空格,则表示间隔不能包含最大空格.否则向后搜索空格开始的位置 - 找到设置您的计数并从您之前跳过的位置继续.
我认为最坏情况下的性能是O(n),最好的情况是O(sqrt(n)),对于每个跳过点都有一个sqrt(n)空白开始后跟非空白的情况(导致反复跳到数组的末尾).
从左到右扫描数组,保留空白计数。当到达非空白字符时,检查该计数是否与当前最大值相符;如果更高,则成为新的最大值。将计数设置回零,继续扫描。这是 O(n),你不能做得更好,因为你必须至少接触每个元素一次。