Back to photostream

Keyboard Row Leetcode Solution

Problem Statement

In this problem, we are given an array of strings. We need to find which strings in the given array belong to any same row in the QWERTY keyboard as shown below:

 

We assume that the array contains strings of English letters.

Example

String_Array = {"Anand" , "Soni" , "Ashfak" , "Turipo"}

Ashfaq Turipo

String_Array = {"qaz" , "wsx" , "edc"}

No words found

Approach(Hashing)

The approach is pretty straightforward. We can hash all the indices to their rows and check that every character for every string in the array has the same value hashed to it. But we need to hash for all 26 characters first in order to preprocess the hashing part. Based on that, we can store them in an array and return it.

Algorithm

 

- Create a HashMap rowId and an array result to store resultant strings

- Initialize a boolean variable same_row = true to run checks on strings

- Hash all the characters to their rows

- For every string str in the array:

 

- set same_row = true

- For every character chr in the array starting from the second:

 

- If the rowId is not equal to rowId:

 

- set same_row = false and jump to next string

 

- If same_row == true:

 

- Push it to result

 

- Return result

 

Implementation of Keyboard Row Leetcode Solution

C++ Program

#includ

 

www.tutorialcup.com/leetcode-solutions/keyboard-row-leetc...

54 views
0 faves
0 comments
Uploaded on September 7, 2021