美文网首页
500. Keyboard Row

500. Keyboard Row

作者: namelessEcho | 来源:发表于2017-09-11 22:37 被阅读0次

    啊呀窝草。。尼玛JAVA写的真是烦啊,还不如去写Python算了,人家五六行我得30行。

    class Solution {
        public String[] findWords(String[] words) {
            ArrayList<String> result = new ArrayList<>();
            HashSet<Character> set1 = new HashSet<>();
            HashSet<Character> set2 = new HashSet<>();
            HashSet<Character> set3 = new HashSet<>();
            intal_rows(set1,"QWERTYUIOPqwertyuiop");
            intal_rows(set2,"ASDFGHJKLasdfghjkl");
            intal_rows(set3,"ZXCVBNMzxcvbnm");
             Sub(set1,words,result);
             Sub(set2,words,result);
             Sub(set3,words,result);
             String[] s = new String[result.size()];
              result.toArray(s);
             return s;
        }
        private void intal_rows (HashSet<Character> set,String s)
        {
            for(int i =0;i<s.length();i++)
            {
                set.add(s.charAt(i));
            }
        }
        private void Sub (HashSet<Character> set,String[] words,ArrayList<String> result)
        {
            for(String s :words)
            {
                int i =0;
                for( i = 0 ;i<s.length();i++)
                {
                    if(!set.contains(s.charAt(i)))
                        break;
                }
                if(i==s.length())
                  result.add(s);
            }
        }   
    }
    

    相关文章

      网友评论

          本文标题:500. Keyboard Row

          本文链接:https://www.haomeiwen.com/subject/qhlqsxtx.html