【LeetCode】3. 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 of 1.

Given "pwwkew", the answer is "wke", with the length of 3. Note that the answer must be a substring, "pwke" is a subsequence and not a substring.

思路大概是建立一个映射表,遍历整个字符串,如果字符对应映射表的index值为-1,说明字符没出现过,计算长度大小,更新maxLength。如果字符出现过,那么就重新开始计算。遍历后得到最后结果。

class Solution {
public:int lengthOfLongestSubstring(string s) {int indexOfChar[256];memset(indexOfChar, -1, sizeof(indexOfChar));int maxLength = 0;int initIndex = -1;for (int i = 0; i < s.length(); ++i){if (indexOfChar[s[i]] > initIndex){initIndex = indexOfChar[s[i]];}indexOfChar[s[i]]=i;maxLength=max(maxLength, i - initIndex);}return maxLength;}
};

 

转载于:https://www.cnblogs.com/Doctengineer/p/5816496.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/286463.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Android之判断时间戳是不是今天

1 需求 判断时间戳是不是今天 2、工具代码 /*** 获取每日0点时间* @return*/fun getTodayTime(timeStamp: Long): Long {val cal = Calendar.getInstance()cal.timeInMillis = timeStampcal.set(Calendar.HOUR_OF_DAY, 0)cal.set(Calendar.SECOND, 0)cal.set(Calendar.MINUTE,…

ArcGIS实验教程——实验二十五:大型商场选址经典案例

ArcGIS实验视频教程合集:《ArcGIS实验教程从入门到精通》(附配套实验数据) 一、实验分析 合理的商场位置有利于商家营业,方便人们购物。商场选址问题需要考虑很多因素,如地理位置、居民点分布、停车场分布、交通情况等。综合把握这些影响因素对商场的选址显得尤为重要。 …

全球域名商解析新增保有量15强:爱名网落榜

IDC评述网&#xff08;idcps.com&#xff09;11月30日报道&#xff1a;根据DailyChanges公布的最新数据显示&#xff0c;在2015年11月26日&#xff0c;全球域名解析新增保有量15强排行榜上&#xff0c;共有5家中国域名商。其中&#xff0c;易名中国连续夺冠&#xff0c;新增保有…

大话领域驱动设计——应用层

‍概述应用层是基于领域的应⽤程序用例的实现&#xff0c;应⽤程序⽤例可以看作是⽤户界⾯上的⽤户交互。这一篇&#xff0c;我将详细讲解应用层组件及用法。总览应用层包含以下组件&#xff1a;数据传输对象&#xff08;DTO)&#xff1a;数据传输对象是一个简单的对象&#xf…

IE8采用IE7模式

< DOCTYPE html PUBLIC -WCDTD XHTML StrictEN httpwwwworgTRxhtmlDTDxhtml-strictdtd> X-UA-Compatible是针对ie8新加的一个设置&#xff0c;对于ie8之外的浏览器是不识别的&#xff0c;这个区别与 content"IE7"在无论页面是否包含<!DOCTYPE>指令&#…

【iVX 初级工程师培训教程 10篇文拿证】01 了解 iVX 完成新年贺卡

目录 【iVX 初级工程师培训教程 10篇文拿证】01 了解 iVX 完成新年贺卡 【iVX 初级工程师培训教程 10篇文拿证】02 数值绑定及自适应网站制作 【iVX 初级工程师培训教程 10篇文拿证】03 事件及猜数字小游戏 【iVX 初级工程师培训教程 10篇文拿证】04 画布及我和 iVX 合照 【iV…

ArcGIS实验教程——实验二十六:ArcScene实现二维数据的三维显示

ArcGIS实验视频教程合集:《ArcGIS实验教程从入门到精通》(附配套实验数据)》 DEM三维显示: 地形数据+影像数据: 以上效果均是在ArcScene中实现的。 ArcScene允许用户制作具有透明效果的场景,在场景中能对数据进行浏览和交互。ArcAcene支持复杂的3D符号系统及纹理制图,支…

用Swashbuckle(swagger-ui)显示API帮助并进行调试

安装Swashbuckle&#xff1a; 打开NuGet控制台输入&#xff1a; Install-Package Swashbuckle 进行安装。查看帮助 在浏览器输入 http://调试项目地址/swagger/ui/index 可以看到帮助的效果API调试 点开调试的条目&#xff0c;填写相关参数&#xff0c;“Try it out!”

Android之Fatal Exception: org.greenrobot.greendao.DaoException: Could not init DAOConfig

1 问题 release apk运行奔溃提示错误如下 Fatal Exception: org.greenrobot.greendao.DaoException: Could not init DAOConfigat org.greenrobot.greendao.h.a.<init>(DaoConfig.java:28)at org.greenrobot.greendao.b.a(AbstractDaoMaster.java:1) 2 解决办法 progu…

Linux两块磁盘挂载指向一个文件夹LVM磁盘管理(一)

注意&#xff1a;任何磁盘的操作有可能损坏里面数据&#xff0c;请提前备份数据&#xff0c;切记&#xff01;切记&#xff01;切记&#xff01; 0x00&#xff1a;前言. 在Linux使用过程中&#xff0c;发现一个文件很大&#xff0c;比如5G&#xff0c;但是有两块物理磁盘一个剩…

AOL search

AOL: American On Line转载于:https://www.cnblogs.com/sophia194910/p/5006466.html

盘点现有开源软件许可合规工具

&#xff5c;原文出处&#xff1a;The Openchain Reference Tooling Work Group&#xff5c;翻译&#xff1a;刘天栋.Ted&#xff0c;开源社.ONES&#xff08;开源战略研究组&#xff09;&#xff5c;编辑&#xff1a;胡湘月&#xff5c;设计&#xff1a;周颖引言开源软件已经吞…

centos 7.4 docker

centos 7.4 docker 1.查看系统版本 cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core)哈1 cat /etc/redhat-release CentOS Linux release 7.9.2009 (Core) 哈1-02 cat /etc/redhat-release CentOS Linux release 7.6.1810 (Core) 哈1-22 cat /etc/redhat…

2016-08-29

已完成&#xff1a; 1. 监督PHP后台完成学校部分接口 4. 评审添加孩子1 5. 评审安全上网 6. 评审答题器学生端 7. 认证方案初步 8. 安全网址方案初步&#xff1a;数据库搜索模式 9. 评审学习窗1 10. 评审学习窗2 11. 评审添加孩子2 12. 答题器研发启动会议 14. Log相关数据库设…

【前端就业课 第一阶段】HTML5 零基础到实战(十一)canvas 基础

注意&#xff1a;手机&#xff08;APP&#xff09;打开&#xff0c;内容显示更佳&#xff0c;不会的私聊博主即可 想要拿代码或加入学习计划&#xff08;** 博主会监督你并且教你写文章 **&#xff09;的拉到最下面&#xff08;PC端Web打开&#xff09;加博主即可&#xff0c;目…

【遥感数字图像处理教程】理论基础知识目录(5章全)

文章目录1. 专栏简介2. 专栏地址3. 专栏目录1. 专栏简介 遥感数字图像的处理&#xff0c;是对遥感数字图像的计算机处理。与工业和医学数字图像不同&#xff0c;遥感数字图像类型更为多样&#xff0c;内容更为复杂。因此&#xff0c;遥感数字图像的处理&#xff0c;不仅需要掌握…

Android OkHttp3简介和使用详解

一 OKHttp简介 OKHttp是一个处理网络请求的开源项目&#xff0c;Android 当前最火热网络框架&#xff0c;由移动支付Square公司贡献&#xff0c;用于替代HttpUrlConnection和Apache HttpClient(android API23 6.0里已移除HttpClient&#xff09;。 OKHttpGitHub地址 OKHttp优…

C语言试题一之计算并输出n(包括n)以内能被5或9整除的所有自然数的倒数之和

📃个人主页:个人主页 🔥系列专栏:C语言试题200例目录 💬推荐一款刷算法、笔试、面经、拿大公司offer神器 👉 点击跳转进入网站 ✅作者简介:大家好,我是码莎拉蒂,CSDN博客专家(全站排名Top 50),阿里云博客专家、51CTO博客专家、华为云享专家 1、题目 请编写函数…

MonoRail学习笔记十一:页面控件的填充和验证

Mono提供很多组件可以方便的处理页面&#xff1a;可以自动将后台的值填充到页面&#xff0c;可以自动进行Javascript验证&#xff0c;可以自动在后台验证等。这些功能都是比较实用的&#xff0c;可以减少很多开发 FormHelper是用来对应html页面中Form内的tag的&#xff0c;可以…

JavaBean的详细及引用

1.JavaBean实际是具有统一接口格式的java类 2.JavaBean的组成&#xff1a;属性(Properties)、方法(Method)、事件(Events) 3.一个JavaBean的例子(该例子是用的Simple属性<属性在以后说>) //我遵循的习惯是类名大写&#xff0c;包名小写package com;//意思是将 FirstBean这…