Problem Statement:
2942. Find Words Containing Character
You are given a 0-indexed array of strings words and a character x.
Return an array of indices representing the words that contain the character x.
Note that the returned array may be in any order.
Initial Code:
class Solution {
public List<Integer> findWordsContaining(String[] words, char x) {
List<Integer> findWordsContaining = new ArrayList();
for (int i = 0; i < words.length; i++) {
if (words[i].contains(x)) {
findWordsContaining.add(i);
}
}
return findWordsContaining;
}
}
Issue in the code -
new ArrayList() | - Should declare the type parameter: new ArrayList<>() (or new ArrayList<Integer>() ) |
words[i].contains(x) | - String.contains() expects a CharSequence , but passed char . Need to convert the char to a String : |
Updated Code:
class Solution { public List<Integer> findWordsContaining(String[] words, char x) { List<Integer> findWordsContaining= new ArrayList<>(); for (int i=0;i<words.length; i++){ if(words[i].indexOf(x)!=-1){ findWordsContaining.add(i); } } return findWordsContaining; } }