zoukankan      html  css  js  c++  java
  • LeetCode 3. 无重复字符的最长子串

    LeetCode 3. 无重复字符的最长子串

    给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。

    示例 1:

    输入: "abcabcbb"
    输出: 3
    解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。
    示例 2:

    输入: "bbbbb"
    输出: 1
    解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。
    示例 3:

    输入: "pwwkew"
    输出: 3
    解释: 因为无重复字符的最长子串是 "wke",所以其长度为 3。
      请注意,你的答案必须是 子串 的长度,"pwke" 是一个子序列,不是子串。


    知识点:

    • 数组变为空,重新定义数组
    • array_key_exists(); // 判断数组是否存在该键

    PHP代码:

    function lengthOfLongestSubstring($s) {
        $ans = $temp = 0;
        $set = array();
        for ($i = 0; $i < strlen($s); ++ $i) {
            if (array_key_exists($s[$i], $set)) {
                $ans = max($ans, $temp);
                $i = $set[$s[$i]];
                $temp = 0;
                $set = array();
            } else {
                ++ $temp;
                $set[$s[$i]] = $i;
            }
        }
        return max($ans, $temp);
    }
  • 相关阅读:
    构造方法
    构造方法的重载
    封装的使用及演示代码
    static的用法及作用
    javaWeb链接数据库进行增删改查
    java面向对象接口小结
    多线程总结
    mysql数据查询
    mysql条件查询
    mysql查询数据
  • 原文地址:https://www.cnblogs.com/GetcharZp/p/11761216.html
Copyright © 2011-2022 走看看