方法 1:数组滑动窗口
思路
- 用两个数组 
cnt_p、cnt_s分别存储p每个字符出现的次数以及s中要判断的字符串的每个字符出现的次数。 cnt_p若和cnt_s相等,则说明当前判断的两个字符串每个字符出现的次数都相等,为字母异位词。
代码
 |  | 
复杂度
- 时间复杂度:$O(n)$
 - 空间复杂度:$O(1)$
 
方法 1:双指针滑动窗口
思路
- 原理同上,只是把用数组下标保存滑动窗口的边界改为了用双指针保存,更加直观。
 
代码
 |  | 
复杂度
- 时间复杂度:$O(n)$
 - 空间复杂度:$O(1)$
 
cnt_p、cnt_s 分别存储 p 每个字符出现的次数以及 s中要判断的字符串 的每个字符出现的次数。cnt_p 若和 cnt_s 相等,则说明当前判断的两个字符串每个字符出现的次数都相等,为字母异位词。 |  | 
 |  |