Problem
Ask
Submissions

Problem: Shortest Word Distance II

Medium
30 min
Understand how to design and implement a WordDistance class that preprocesses an array of strings to quickly find the shortest distance between any two distinct words. Practice creating a specialized data structure to handle multiple queries efficiently, improving your problem-solving skills in coding interviews.

Statement

Design a data structure that takes in an array of strings and efficiently computes the shortest distance between any two different strings in the array.

Implement the WordDistance class:

  • WordDistance(String[] words_dict): Initializes the object with an array of strings.

  • int shortest(String word1, String word2): Returns the shortest distance between word1 and word2 in the array of strings.

Constraints:

  • 11 \leq words_dict.length 103\leq10^3

  • 11 \leq words_dict[i].length 10\leq 10

  • words_dict[i] consists of lowercase English letters

  • word1 and word2 are in words_dict

  • word1 != word2

  • At most, 10001000 calls will be made to the shortest

Problem
Ask
Submissions

Problem: Shortest Word Distance II

Medium
30 min
Understand how to design and implement a WordDistance class that preprocesses an array of strings to quickly find the shortest distance between any two distinct words. Practice creating a specialized data structure to handle multiple queries efficiently, improving your problem-solving skills in coding interviews.

Statement

Design a data structure that takes in an array of strings and efficiently computes the shortest distance between any two different strings in the array.

Implement the WordDistance class:

  • WordDistance(String[] words_dict): Initializes the object with an array of strings.

  • int shortest(String word1, String word2): Returns the shortest distance between word1 and word2 in the array of strings.

Constraints:

  • 11 \leq words_dict.length 103\leq10^3

  • 11 \leq words_dict[i].length 10\leq 10

  • words_dict[i] consists of lowercase English letters

  • word1 and word2 are in words_dict

  • word1 != word2

  • At most, 10001000 calls will be made to the shortest