LeetCode-500. Keyboard Row
Given a List of words, return the words that can be typed using letters of alphabet on only one row's of American keyboard
public class Solution { public String[] findWords(String[] words) { if (words == null) return new String[0]; String[] r = {"qwertyuiop", "asdfghjkl", "zxcvbnm"}; List<String> rets = new ArrayList<String>(); for (String ws : words) { String w = ws.toLowerCase(); char first = w.charAt(0); int in = 0; while (in < 3) { if (r[in].contains(first+"")) break; in ++; } boolean all = true; for (int i=1; i<w.length(); i++) { if (!r[in].contains(w.charAt(i)+"")) { all = false; break; } } if (all) { rets.add(ws); } } return rets.toArray(new String[0]); } }
作者:Pickle
声明:对于转载分享我是没有意见的,出于对博客园社区和作者的尊重一定要保留原文地址哈。
致读者:坚持写博客不容易,写高质量博客更难,我也在不断的学习和进步,希望和所有同路人一道用技术来改变生活。觉得有点用就点个赞哈。