目录
一、题目
- 一、题目
- 二、题目代码解析
给定一个字符串str,请你找出其中不含有重复字符的最长子串的长度
示例1 输入: str=“abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是"abc",所以其长度为3
示例2 输入: str=“bbbbb” 输出: 1 解释:因为无重复字符的最长子串是"b",所以其长度为1
示例3 输入: str=“pwwkew” 输出: 3 解释: 因为无重复字符的最长子串是"wke",所以其长度为3
示例4 输入: str="" 输出: 0
二、题目代码解析package com.xz.leetcode.day3;
import java.util.HashSet;
import java.util.Set;
/**
* @description: 给定一个字符串str,请你找出其中不含有重复字符的最长子串的长度
*
* 示例1
* 输入: str="abcabcbb"
* 输出: 3
* 解释: 因为无重复字符的最长子串是"abc",所以其长度为3
*
* 示例2
* 输入: str="bbbbb"
* 输出: 1
* 解释:因为无重复字符的最长子串是"b",所以其长度为1
*
* 示例3
* 输入: str="pwwkew"
* 输出: 3
* 解释: 因为无重复字符的最长子串是"wke",所以其长度为3
*
* 示例4
* 输入: str=""
* 输出: 0
* @author: xz
* @create: 2021-07-27 22:11
*/
public class Demo {
public static void main(String[] args) {
String str="abcabcbb";
int length=lengthOfLongestSubString(str);
System.out.println("不含有重复字符的最长子串的长度: "+length);
}
public static int lengthOfLongestSubString(String str){
//定义一个哈希集合,记录每个字符是否出现过
Set set =new HashSet();
//右指针的初始值为0,相当于我们在字符串的左边界第一个字符
int rk =0;
//最长子串的长度,初始值为0
int ans=0;
for(int i=0;i
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?