无重复字符的最长字串

题目描述:

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

示例:

  给定 “abcabcbb” ,没有重复字符的最长子串是 “abc” ,那么长度就是3。
  给定 “bbbbb” ,最长的子串就是 “b” ,长度是1。
  给定 “pwwkew” ,最长子串是 “wke” ,长度是3。请注意答案必须是一个子串,”pwke” 是 子序列  而不是子串
思路:  假设字符串为0,返回0即可  遍历字符串,首先判断字符是否在字符串tc里,不在,添加,并记录字符串的长度  如果在,将字符添加到字符串tc里,并从出现字符的地方到最后进行截取

class Solution:
    def lengthOfLongestSubstring(self, s):
        m = 0
        tc = str()
        for c in s:
            if c not in tc:
                tc+=c
                m=max(len(tc),m)
            else:
                tc+=c
                tc=tc[tc.index(c)+1:]
        return m

原文地址:https://www.cnblogs.com/whu-2017/p/9734690.html

时间: 2024-11-08 11:01:14

无重复字符的最长字串的相关文章

leetcode无重复字符的最长字串 python实现

无重复字符的最长字串是一道字符串处理算法的题目,在日常编程中,处理字符串是常见任务.用Python来实现leetcode这道算法题,该题目会涉及到一个概念"滑动窗口". 一.题目描述 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度(Longest substring without repeating characters). 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所

无重复字符的最长字串问题

leetcode3:无重复字符的最长字串问题 问题描述 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3.示例 2: 输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1.示例 3: 输入: "pwwkew"输出: 3 这道题,我自己的

编程练习:无重复字符的最长字串

题目LeetCode-无重复字符的最长字串 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例1 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3. 示例2 输入: "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b",所以其长度为 1. 分析与实现 解法一 分析 这里面的难度在于,从i开始遍历,遇到相同字符后结束,记录长度.然后从

【leetcode算法-中等】3. 无重复字符的最长字串

[题目描述] 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3.示例 2: 输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1.示例 3: 输入: "pwwkew"输出: 3解释: 因为无重复字符的最长子串是 "wke&qu

[leetcode]3无重复字符的最长字串

本题思路较清楚,通过一个数组记录各个位置所能够引导的最长字符串的长度即可. 稍微有一点难度在于如何向前寻找时判断已经出现了重复字符串,我采用的思路为只有当前项的长度等于当前长度时,认为尚未出现重复字符串,并更新前项长度++. 1 int max=0; 2 int st[100000]={0};//表示以它为开头的最长不重复字串长度 3 int i=0; 4 char p; 5 while(s[i]!='\0') 6 { 7 p=s[i]; 8 st[i]=1; 9 max=st[i]; 10 f

Longest Substring Without Repeating Characters,求没有重复字符的最长字串

问题描述: Given a string, find the length of the longest substring without repeating characters. Examples: Given "abcabcbb", the answer is "abc", which the length is 3. Given "bbbbb", the answer is "b", with the length

QA:无重复字符的最长子串

无重复字符的最长字串 leetcode地址:https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/ 题目描述: 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例: 输入: "abcabcbb" 输出: 3 解决思路: 使用map  lastOccured[byte]int 记录字符和字符最后出现的下标 对于字符串每个字符x: 1.lastOccured[x]不

3. Longest Substring Without Repeating Characters 无重复字符的最长子串

1. 原始题目 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3. 示例 2: 输入: "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b",所以其长度为 1. 示例 3: 输入: "pwwkew" 输出: 3 解释: 因为无重复字符的最长子串是 &quo

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

难度: 中等 题目 Given a string, find the length of the longest substring without repeating characters. 给定一个字符串,请你找出其中不含有重复字符的?最长子串?的长度. 示例?1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3. 示例 2: 输入: "bbbbb" 输出: 1 解释: 因为无重复字