wordpress是完全免费的嘛,关键词优化计划,WordPress 种子搜索,重庆网站模版建设力扣 3.无重复字符的最长子串
暴力法#xff1a;双层for循环#xff0c;i-j的字符查重
滑动窗口#xff1a;因为这题被分在这个类别里#xff0c;那么已知要用滑动窗口#xff0c;思路应该是什么。 反正我想不出来…… 看了别人的题解写出来的出错点#xff1a;特别容易…力扣 3.无重复字符的最长子串
暴力法双层for循环i-j的字符查重
滑动窗口因为这题被分在这个类别里那么已知要用滑动窗口思路应该是什么。 反正我想不出来…… 看了别人的题解写出来的出错点特别容易下标和元素弄混
class Solution {public int lengthOfLongestSubstring(String s) {SetCharacterset new HashSetCharacter();char ch;int res0;for(int left0,right0; rights.length(); right) {ch s.charAt(right);while(set.contains(ch)) {set.remove(s.charAt(left)); //注意这里是用leftleft;}set.add(ch);res Math.max(res, right-left1);}return res;}
}ACM模式练习 https://www.acwing.com/problem/content/57/ 滑动窗口模板
//外层循环扩展右边界内层循环扩展左边界
for (int l 0, r 0 ; r n ; r) {//当前考虑的元素while (l r check()) {//区间[left,right]不符合题意//扩展左边界}//区间[left,right]符合题意统计相关信息
}本题变形
腾讯面试题需要返回的是子串来自力扣评论 我的思路在这一句下功夫res Math.max(res, right-left1); 多设置一个变量 strLeft当更新res的时候strLeft left。当for循环结束知道子串长度res和字串起始值strLeft就可以返回字串了
public class Collection01 {public static void main(String[] args) {lengthOfLongestSubstring(pwwkew);}public static int lengthOfLongestSubstring(String s) {SetCharacterset new HashSetCharacter();char ch;int res0;int strleft0;for(int left0,right0; rights.length(); right) {ch s.charAt(right);while(set.contains(ch)) {set.remove(s.charAt(left)); //注意这里是用leftleft;}set.add(ch);if((right-left1)res) {res right-left1;strleft left;}}System.out.println(res);System.out.println(strleft);System.out.println(s.substring(strleft,strleftres));return res;}}