《LeetCode力扣练习》第3题 C语言版 (做出来就行,别问我效率。。。。)
库你急哇,哈集美马戏特~~
第一眼看这题的反应,(我以前做过这个题好几遍了)。再看一眼之后发现,(什么?我什么时候做过这个题?)
题目:
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。
示例 1:
输入: s = “abcabcbb”
输出: 3
解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。
示例 2:
输入: s = “bbbbb”
输出: 1
解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。
示例 3:
输入: s = “pwwkew”
输出: 3
解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。
请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,不是子串。
示例 4:
输入: s = “”
输出: 0
提示:
0 <= s.length <= 5 * 104
s 由英文字母、数字、符号和空格组成
来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/longest-substring-without-repeating-characters
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
上代码(其中的(unsigned char)是为了防止为负值的char作为数组下标引起警告,主要的思想还是官方所说的滑动窗口)
#include <stdio.h>
#include <stdlib.h>
#include <string.h>int lengthOfLongestSubstring(char * s){int loc[256];memset(loc,-1,sizeof(loc));int start=0,count=0,max=0;int i=0;int len=strlen(s);for(i=0;i<len;i++){if(loc[(unsigned char)s[i]]>=start){start=loc[(unsigned char)s[i]]+1;count=i-start;}loc[(unsigned char)s[i]]=i;count++;if(count>max){max=count;}}return max;}int main()
{char check[]="ILoveChina";printf("%d",lengthOfLongestSubstring(check));return 0;
}
《LeetCode力扣练习》第3题 C语言版 (做出来就行,别问我效率。。。。)相关推荐
- 《LeetCode力扣练习》第96题 不同的二叉搜索树 Java
<LeetCode力扣练习>第96题 不同的二叉搜索树 Java 一.资源 题目: 给你一个整数 n ,求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种?返回 ...
- 《LeetCode力扣练习》第75题 颜色分类 Java
<LeetCode力扣练习>第75题 颜色分类 Java 一.资源 题目: 给定一个包含红色.白色和蓝色.共 n 个元素的数组 nums ,原地对它们进行排序,使得相同颜色的元素相邻,并按 ...
- 《LeetCode力扣练习》第64题 最小路径和 Java
<LeetCode力扣练习>第64题 最小路径和 Java 一.资源 题目: 给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为 ...
- 《LeetCode力扣练习》第62题 不同路径 Java
<LeetCode力扣练习>第62题 不同路径 Java 一.资源 题目: 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 "Start" ). ...
- 《LeetCode力扣练习》第56题 合并区间 Java
<LeetCode力扣练习>第56题 合并区间 Java 一.资源 题目: 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, ...
- 《LeetCode力扣练习》第55题 跳跃游戏 Java
<LeetCode力扣练习>第55题 跳跃游戏 Java 一.资源 题目: 给定一个非负整数数组 nums ,你最初位于数组的 第一个下标 . 数组中的每个元素代表你在该位置可以跳跃的最大 ...
- 《LeetCode力扣练习》第617题 合并二叉树 Java
<LeetCode力扣练习>第617题 合并二叉树 Java 一.资源 题目: 给你两棵二叉树: root1 和 root2 . 想象一下,当你将其中一棵覆盖到另一棵之上时,两棵树上的一些 ...
- 《LeetCode力扣练习》第461题 汉明距离 Java
<LeetCode力扣练习>第461题 汉明距离 Java 一.资源 题目: 两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目. 给你两个整数 x 和 y,计算并返回 ...
- 《LeetCode力扣练习》第448题 找到所有数组中消失的数字 Java
<LeetCode力扣练习>第448题 找到所有数组中消失的数字 Java 一.资源 题目: 给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内.请你 ...
- 《LeetCode力扣练习》第338题 比特位计数 Java
<LeetCode力扣练习>第338题 比特位计数 Java 一.资源 题目: 给你一个整数 n ,对于 0 <= i <= n 中的每个 i ,计算其二进制表示中 1 的个数 ...
最新文章
- 基于python的压测工具_Python Locust性能测试简介及框架实践
- java 线程组作用_浅析Java中线程组(ThreadGroup类)
- 软件是计算机什么及相关文档的总称,1冯-诺依曼原理的基本思想是什么.doc
- appium框架之bootstrap
- php证券k线图,php画K线图的一个工具
- 启动转换安装失败 拷贝windows安装文件时出错_男人的生产力工具:极速拷贝 效率神器 TeraCopy精品推荐...
- promise存在的意义分析resolve reject catch
- 终于,我读懂了所有Java集合——List篇
- lecture7-序列模型及递归神经网络RNN
- 关于VS2017提示I/O文件操作函数需要加上_s的解决办法
- php中的try语句,PHP Try-catch 语句使用技巧
- Microsoft Softwares
- PHP 控制器怎么调接口,mvc控制器的访问与参数解析和API接口获取数据
- 把你问到哑口无言,HR是专业的!
- 关于arduino的各种网站
- 扬笛水墨人物画——《怒放4》作品赏析
- 华为鸿蒙是安卓9,鸿蒙“翻车”了?网友发现全新的鸿蒙系统居然是安卓9.0,华为骗我们?...
- ffmpeg实现g711音频和H264,H265封装mp4(整理,非原创)
- android 家长控制app下载,任天堂家长控制app下载-任天堂家长控制 安卓版v1.0.2-PC6安卓网...
- Pytorch+Google BERT模型(RoBERTa+LSTM+GRU)实战