Leetcode 500.键盘行
键盘行
给定一个单词列表,只返回可以使用在键盘同一行的字母打印出来的单词。键盘如下图所示。
示例:
输入: ["Hello", "Alaska", "Dad", "Peace"]
输出: ["Alaska", "Dad"]
注意:
- 你可以重复使用键盘上同一字符。
- 你可以假设输入的字符串将只包含字母。
1 import java.util.ArrayList; 2 import java.util.List; 3 4 class Solution { 5 public String[] findWords(String[] words) { 6 List<String> res=new ArrayList<String>(); 7 String row1="wqertyuiopQWERTYUIOP"; 8 String row2="sadfghjklASDFGHJKL"; 9 String row3="zxcvbnmZXCVBNM"; 10 for(String word:words){ 11 int a=0; 12 int b=0; 13 int c=0; 14 for(int i=0;i<word.length();i++){ 15 if(row1.contains(word.charAt(i)+"")) a=1; 16 else if(row2.contains(word.charAt(i)+"")) b=1; 17 else if(row3.contains(word.charAt(i)+"")) c=1; 18 if(a+b+c>1) break; 19 } 20 if(a+b+c==1) res.add(word); 21 } 22 String[] str=new String[res.size()]; 23 for(int i=0;i<str.length;i++){ 24 str[i]=res.get(i); 25 } 26 return str; 27 } 28 }