Find All Anagrams In A String is an example of string problems. In this post we will see how we can solve it in Javascript.

Problem Description

Given a string s and a non-empty string p, find all the start indices of p's anagrams in s. Strings consists of lowercase English letters only and the length of both strings s and p will not be larger than 20,100.

The order of output does not matter.

Example 1:

Input:
s: "cbaebabacd" p: "abc"

Output: [0, 6]

Explanation:

  • The substring with start index = 0 is "cba", which is an anagram of "abc".
  • The substring with start index = 6 is "bac", which is an anagram of "abc".

Example 2:

Input:
s: "abab" p: "ab"

Output: [0, 1, 2]

Explanation:

  • The substring with start index = 0 is "ab", which is an anagram of "ab".
  • The substring with start index = 1 is "ba", which is an anagram of "ab".
  • The substring with start index = 2 is "ab", which is an anagram of "ab".

Solution: Please check the main.js snippet for the solution. If you have different approach in mind or have any suggestion for this implementation feel free to share in the comment below. Thanks!

Originally posted at: @github.com/jeantimex/javascript-problems-and-solutions