美文网首页
无重复字符的最长子串

无重复字符的最长子串

作者: 花钱约下 | 来源:发表于2019-01-31 15:42 被阅读0次
    /**
     * 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。
     *
     * @param $s
     *
     * @return bool|string
     */
    function lengthOfLongestSubstring($s)
    {
        $len  = strlen($s);
        $ans  = 0;
        $i    = 0;
        $data = [];
    
        for ($j = 0; $j < $len; $j++) {
            $key = $s[$j];
            if (array_key_exists($key, $data)) {
                $i = max($data[$key], $i);
            }
            $ans        = max($ans, $j - $i + 1);
            $data[$key] = $j + 1;
        }
        return $ans;
    }
    
    $s = 'abderdfstdfd';
    $x = lengthOfLongestSubstring($s);
    echo $x;#6
    

    相关文章

      网友评论

          本文标题:无重复字符的最长子串

          本文链接:https://www.haomeiwen.com/subject/frzksqtx.html