Search⌘ K
AI Features

Word Search

Explore how to implement backtracking to determine if a given word can be formed by sequentially adjacent letters in a grid. Understand the use of horizontal and vertical neighbors, constraints on cell reuse, and develop efficient solutions for word search challenges.

Statement

Given an m x n grid of characters, board, and a string word, return TRUE if word exists in the grid.

The word can be formed by connecting letters of sequentially adjacent cells. The cells are considered sequentially adjacent when neighbors are either horizontally or vertically neighbors. Each cell can be used only once while forming the word.

Constraints:

  • m ==== board.length

  • n == board[i].length, where 00 \leq i << m

  • 11 \leq m, n 6\leq 6

  • 11 \leq word.length 15\leq 15

  • board and word consist of only lowercase and uppercase English letters.

Examples

Understand the problem

Let’s take a moment to make sure you've correctly understood the problem. The quiz below helps you check if you're solving the correct problem:

Word Search

1.

Can we find the word magnanimousmagnanimous in the given grid?

[['K', 'I', 'C', 'D', 'L', 'J', 'M', 'R']
 ['V', 'M', 'S', 'P', 'C', 'F', 'A', 'G']
 ['C', 'A', 'G', 'D', 'J', 'O', 'L', 'O']
 ['Q', 'Z', 'N', 'T', 'F', 'X', 'C', 'T']
 ['R', 'L', 'A', 'N', 'I', 'R', 'G', 'D']
 ['J', 'A', 'W', 'Y', 'M', 'O', 'U', 'A']
 ['Z', 'A', 'P', 'D', 'R', 'C', 'S', 'D']
 ['Y', 'V', 'A', 'F', 'P', 'L', 'Z', 'T']]
A.

Yes

B.

No


1 / 2

Figure it out!

We have a game for you to play. Rearrange the logical building blocks to develop a clearer understanding of how to solve this problem.

Sequence - Vertical
Drag and drop the cards to rearrange them in the correct sequence.

1
2
3
4
5
6
7
8

Try it yourself

Implement your solution in the following coding playground.

JavaScript
usercode > main.js
function wordSearch(grid, word){
// Replace this placeholder return statement with your code
return false
}
export {
wordSearch
}
Word Search