docs(docs): add Permutation in String documentation

This commit is contained in:
Prad Nukala
2026-08-25 15:00:56 -04:00
parent 554145072d
commit aba3d9b18b
@@ -0,0 +1,51 @@
---
title: '567. Permutation in String'
description: Given two strings s1 and s2, return true if s2 contains a permutation of s1, or false otherwise
sidebar:
label: 'Permutation in String'
badge: 'Medium'
---
<Badge variant="accent">Sliding Window</Badge>
### Example 1:
- Input: `s1 = "ab", s2 = "eidbaooo"`
- Output: `true`
- Explanation: `s2` contains one permutation of `s1` ("ba").
### Example 2:
- Input: `s1 = "ab", s2 = "eidboaoo"`
- Output: `false`
### Constraints:
- `1 <= s1.length, s2.length <= 10^4`
- `s1` and `s2` consist of lowercase English letters.
## Solution
```py
from collections import Counter
class Solution:
def checkInclusion(self, s1: str, s2: str) -> bool:
k = len(s1)
if k > len(s2):
return False
need = Counter(s1)
window = Counter()
for right, c in enumerate(s2):
window[c] += 1
if right >= k:
left_char = s2[right - k]
window[left_char] -= 1
if window[left_char] == 0:
del window[left_char]
if window == need:
return True
return False
```