美文网首页
2022-08-09 滑动窗口

2022-08-09 滑动窗口

作者: 16孙一凡通工 | 来源:发表于2022-08-08 20:24 被阅读0次

剑指 Offer II 014. 字符串中的变位词

滑动窗口:在第二个字符串中每次滑行进行判断,
class Solution {
public boolean checkInclusion(String s1, String s2) {
// 判断第一个字符是否在里面

    // 在的话,截取从这个字符开始的长度
    //  计算起始到这个长度的哈希值

    int m=s1.length();
    int n=s2.length();
     int[] arr=new int[26];
      for(int i=0;i<m;i++){
       arr[s1.charAt(i)-'a']++;
    }
  
    boolean res=false;
    int index=0;
  
    for(int i=0;i<n-m+1;i++){
        if( arr[s2.charAt(i)-'a']!=0){
            index=i;
            // System.out.println(index);
          res=compare(s1,s2,index);
          if(res==true){
              break;
          }
        }
    }
    return res;

}
 public boolean compare(String s1,String s2,int index){
     int m=s1.length();
     int[] arr=new int[26];
      for(int i=0;i<m;i++){
       arr[s1.charAt(i)-'a']++;
       arr[s2.charAt(i+index)-'a']--;
    }
    for(int i=0;i<26;i++){
        if(arr[i]!=0){
            return false;
        }
    }
    return true;

 }

}

相关文章

  • 2022-08-09 滑动窗口

    剑指 Offer II 014. 字符串中的变位词[https://leetcode.cn/problems/MP...

  • Algorithm进阶计划 -- 滑动窗口

    滑动窗口算法滑动窗口框架滑动窗口运用 1. 滑动窗口框架 滑动窗口算法,核心思路是维护一个窗口,不断滑动,然后更新...

  • TCP可靠传输理论;流量控制;拥塞控制

    滑动窗口、超时重传、选择确认SACK 滑动窗口 滑动窗口:发送窗口、接收窗口。发送窗口内的数据都可以发送,在收到新...

  • 3. 无重复字符的最长子串

    主要用到了滑动窗口算法两个指针之间就代表是一个滑动窗口,滑动窗口必须保证没有重复元素,同时保留最大的滑动窗口的大小...

  • Flutter-BottomSheet(底部滑动窗口)

    BottomSheet(底部滑动窗口) ModalBottomSheet(对话框式底部滑动窗口) BottomSh...

  • 无重复字符最长字串

    滑动窗口

  • (3)FlinkSQL滑动窗口demo演示

    滑动窗口(Sliding Windows)与滚动窗口类似,滑动窗口的大小也是固定的。区别在于,窗口之间并不是首尾相...

  • 滑动窗口

    406. 和大于S的最小子数组 描述给定一个由 n 个正整数组成的数组和一个正整数 s ,请找出该数组中满足其和 ...

  • 滑动窗口

    最长无重复字母子串 leetcode438

  • 滑动窗口

    介绍将TCP与UDP这样的简单传输协议区分开来的是它传输数据的质量。TCP对于发送数据进行跟踪,这种数据管理需要协...

网友评论

      本文标题:2022-08-09 滑动窗口

      本文链接:https://www.haomeiwen.com/subject/sbanwrtx.html