LeetCode——Longest Substring Without Repeating Characters

LeetCode——Longest Substring Without Repeating Characters

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

Given a string, find the length of the longest substring without repeating characters. For example, the longest substring without repeating letters for “abcabcbb” is “abc”, which the length is 3. For “bbbbb” the longest substring is “b”, with the length of 1.

给定一个字符串,找出最长的无反复子串。

	public static int lengthOfLongestSubstring(String s) {
		if (s == null || s.length() == 0)
			return 0;
		int maxlen = 1;
		boolean[] flag = new boolean[256];
		int start = 0;

		for (int i = 0; i < s.length(); i++) {
			char ch = s.charAt(i);
			if (flag[ch]) {
				maxlen = Math.max(maxlen, i - start);
				for (int j = start; j < i; j++) {
					if (s.charAt(j) == ch) {
						start = j + 1;
						break;
					}
					flag[s.charAt(j)] = false;
				}
			} else
				flag[ch] = true;
		}
		return Math.max(maxlen, s.length() - start);
	}

版权声明:本文博客原创文章,博客,未经同意,不得转载。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/117555.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • SVM——支持向量回归(SVR)[通俗易懂]

    SVM——支持向量回归(SVR)[通俗易懂]1、支持向量回归的原始问题先来看看SVM线性支持向量机(软间隔)的原始问题:其中ξi是松弛变量,但它实际上是hinge(合页)损失函数,所以ξi也作为对应的点(xi,yi)的损失,如下图所示:当点(xi,yi)位于间隔面上或者间隔面之外(这两种都是正确分类的情况)则ξi=0,若点(xi,yi)位于分割面上或者正确分类且位于间隔面之内或者位于分错的那一侧,这三种情况都是有损失的,损失…

    2022年5月20日
    30
  • 800个有趣句子帮你记忆7000个单词[通俗易懂]

    800个有趣句子帮你记忆7000个单词[通俗易懂]800个有趣句子帮你记忆7000个单词   1.WithmyownearsIclearlyheardtheheartbeatofthenuclearbomb.我亲耳清楚地听到原子弹的心脏的跳动。 2.Nextyearthebeardedbearwillbearadearbabyintherear.明年,长胡子的熊将

    2022年6月7日
    21
  • 毕业六年

    今年工作变化。这一年可以说命途多舛,下半年短短几个月,换了3条业务4个老板,有被动调整,也有主动转岗,面临比较重要的选择,还是相当煎熬的。这个过程有些坑,空了单独分享。运气不好的是频繁拥抱变化,有些努力白费了,意外之中又有意外,不过运气好的是年终没吃太多亏,权当是走个弯路,浪费了一年时间吧。惰性。技术上来说,转后端一年多,工作够用了,不过这两年从客户端折腾到前端又到后端,把技术热情磨没了,可能也是各方面原因,今年第一次感觉到了惰性,有点佛,感觉够用就行,不再试图知其所以然…

    2022年3月11日
    43
  • java单例模式有什么用_java单例模式代码实现

    java单例模式有什么用_java单例模式代码实现Java的单例实现方式经典:懒汉式、饿汉式、双重检测锁关键:私有化构造方法通过方法去获取单例对象懒汉(调用时再去初始化)、饿汉(直接初始化)Demo://饿汉式publicclassDemo1{privatestaticDemo1demo1=newDemo1();privateDemo1(){sout(“初始化”);}publicstaticDemo1getInstance(){returndemo1;}

    2022年8月11日
    3
  • google搜索引擎怎么用_如何使用谷歌搜索

    google搜索引擎怎么用_如何使用谷歌搜索2021年2月23日,在使用python的matplotlib模块画图的过程中,marker的点过于密集了,在国内的搜索引擎(你懂的)搜索了好长时间,也不知道是我的搜索关键字设置的不对,还是它就是这么垃圾,一直搜索不出来我需要的答案。无奈之下,只好试试google。在google里面使用中文搜索也是搜索不到答案,我使用英文关键字搜索,第一条搜索出来的便是StackOverflow的答案,立马解决了我的问题。这令我感触颇深,google搜索引擎确实是程序员的利器。所以一定必须用好google搜索。

    2022年9月11日
    1
  • idle和pycharm可以同时安装吗_python自带的编辑器

    idle和pycharm可以同时安装吗_python自带的编辑器1、pythonpython自身缺少numpy、matplotlib、scipy、scikit-learn….等一系列重要和常用的包,需要我们安装pip来导入这些包才能进行相应运算(python3.5自带了get-pip.py,不需额外下载安装),在cmd终端输入:pipinstallnumpy就能安装numpy包了。python3.5自带了一个解释器IDLE用来执行.py脚本,但是却不…

    2022年8月28日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号