Search⌘ K
AI Features

Solution: Wildcard Matching

Explore how to solve the wildcard matching problem by implementing a greedy algorithm that uses pointers and backtracking to match patterns containing '?' and '*' to an input string. Understand the approach's efficiency with O(n+m) time and O(1) space complexity while ensuring complete pattern matching.

Statement

Given an input string, s, and a pattern string, p, implement wildcard pattern matching that determines if the pattern matches the entire input string.

The pattern supports two special wildcard characters:

  • '?': Matches exactly one arbitrary character.

  • '*': Matches any sequence of characters (including zero characters).

The match must be complete, meaning the pattern should cover the entire input string, not just a part of it.

Return TRUE if the pattern matches the whole string; otherwise, return FALSE.

Constraints:

  • 00 \leq s.length ,, ...