leetcode解题
提供leetcode题目的解题思路
我真的很困1
这个作者很懒,什么都没留下…
展开
-
LeetCode3.无重复字符的最长子串
逐步分析的话就是先计算字符串长度,然后循环len次,定义一共标识变量same,通过赋值的形式来判断是否有重复字符,如图,当s[j]== s[right],就意味着有重复字符了,然后让left=j+1,再保存遇到重复字符前的长度,存储在max中,right-left+1就意味着两者之间字符串的长度,left = j+1意思就是从重复字符的下一个再进行以上计算。首先是我自己解题,写的太过复杂效率很低,虽然能运行成功但是运行速度低而且占用内存也挺大,这里可以当做反面教材了,以后写代码能优化尽量优化。原创 2023-03-17 21:50:06 · 71 阅读 · 0 评论 -
LeetCode13罗马数字转整数
接着就是通过循环来叠加数值存放到ans里,然后根据题目的六种特殊情况,是小的放在大的左边,所以我们可以比较大小,可以通过减的方式来算出最终答案,思路如下。可以看出每个字符代表唯一数值,并且一般小数字在大数字的右边,如果不符合这条规则则根据图中下面的六条规则来。接着看见了个感觉很巧妙的方法,链接附在下方,将特殊情况中的字符重新定义,最后转换成单个字符的判断。首先是自己写的代码,没有巧妙的地方,先是判断每一个字符,接着再判断是否是那些特殊情况中的字符。然后就是求出需要转换的罗马字符长度,储存在n里面。原创 2023-03-17 17:42:00 · 88 阅读 · 0 评论 -
LeetCode1615网络秩
求最大网络秩,我们按图中说城市0和1,我们可以看见0城市有[0,1][0,3] 1城市有[1,0][1,2][1,3]题目要求求出最大数量,我们储存完之后,比较每个城市对的网络秩数量-1(重复一条),再输出最大的那一对,这道题目便可解决。在这里如果看不懂这些名词,我们可以这么理解,网络秩就是让你求一个城市对总共所连接的道路,我们分析题目给的图。如connect[0][1]代表城市0和1,接着再创建一个一维数组用来储存每座城市所连接道路的最大数量。如num[1],代表城市1所连接的道路最大数量。原创 2023-03-16 20:54:07 · 94 阅读 · 0 评论