文档章节

Keyboard Row

tiantian1994
 tiantian1994
发布于 2017/03/31 16:14
字数 311
阅读 2
收藏 0

Given a List of words, return the words that can be typed using letters of alphabet on only one row's of American keyboard like the image below.

 

Example 1:

Input: ["Hello", "Alaska", "Dad", "Peace"]
Output: ["Alaska", "Dad"]

 

Note:

  1. You may use one character in the keyboard more than once.
  2. You may assume the input string will only contain letters of alphabet.
package test;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

/**
 * Created by daitiantian on 2017/3/20.
 */

public class Hamming {

    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入几个字符串(以空格分开):");
        String x = sc.nextLine();
        String [] w= x.split(" ");
        System.out.println("可以在一行中拼出的单词为:");
        String[] s =findWords(w);
        for(int n = 0;n<s.length;n++){

            System.out.println(s[n]);
        }


    }
    public static String[] findWords(String[] words) {

        char[] c1 = {'q','w','e','r','t','y','u','i','o','p'};
        char[] c2 = {'a','s','d','f','g','h','j','k','l'};
        char[] c3 = {'z','x','c','v','b','n','m'};
        char[] re = new char[words.length];
        for(int i = 0;i<words.length;i++){
            re[i] = '0';
            int x = 0,y=0,z=0;
            char[] f = words[i].toCharArray();
            for(int j = 0;j<words[i].length();j++) {
                for(int i1 = 0; i1<10;i1++){

                    if (Character.toLowerCase(f[j]) == Character.toLowerCase(c1[i1])){
                        x++;
                    }
                }
                for(int i2 = 0; i2<9;i2++){

                    if (Character.toLowerCase(f[j]) == Character.toLowerCase(c2[i2])){
                        y++;
                    }
                }
                for(int i3 = 0; i3<7;i3++){
                    if (Character.toLowerCase(f[j]) ==Character.toLowerCase(c3[i3])){
                        z++;
                    }
                }

            }
            if(x == words[i].length()||y ==words[i].length()||z==words[i].length()){
                re[i] = '1';
            }

        }

        ArrayList List = new ArrayList();
        for(int m = 0; m<words.length;m++){
            if (re[m]=='1'){
                List.add(words[m]);
            }
        }
        String [] q= new String[List.size()];
        for(int m = 0; m<List.size();m++){
            q[m] =(String)List.get(m);
        }

        return q;

    }

}

 

© 著作权归作者所有

上一篇: Missing Number
下一篇: Number Complement
tiantian1994
粉丝 1
博文 15
码字总数 3889
作品 0
南京
私信 提问
KOKeyboard

KOKeyboard is an iOS drop-in component that adds a new row of keys to the default on-screen keyboard. It consists of swipe buttons with all common symbols, punctuation and brack......

匿名
2012/09/08
444
0
判断是否在键盘的同一行 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 like the image below. Example 1: Input: ["Hello......

叶枫啦啦
2017/06/07
0
0
spring dojo 报错

我的页面如下: dTuned dTuned 报如下错误: _27.split is not a function http://localhost:8080/gg/dojo/dojo/dojo.js Line 16 这个该怎么解决啊?...

wenwen1
2012/11/16
524
0
一个中文输入法软键盘的布局方式怎么实现的问题

@红薯 你好,想跟你请教个问题:关于输入法字母键盘的布局,比如下面的样子 android自带的例程SoftKeyboard中是通过下面这种标签来确定的 我可以把其中每个字母键直接定义成一个按钮,即在x...

java远
2013/04/30
842
0
ionic v1.0.0-rc.3 "radium-raccoon" 发布

ionic v1.0.0-rc.3 "radium-raccoon" 发布,此版本主要是 bug 修复: slidebox: defaults to true (95688d6a) prevent scrolling while sliding (db7f0eee, closes #2814) fonts Add support......

oschina
2015/04/14
936
6

没有更多内容

加载失败,请刷新页面

加载更多

《生活的难题》的读后感3600字范文

《生活的难题》的读后感3600字范文: 假如我们对丑的事物也能够像对待美的事物那般抱持一种开放、接纳的心态,拥有相同的感受力,那么我们便会发现它们都是充满意义的,而这种认识会使生活变...

原创小博客
19分钟前
1
0
Linux learn(四)

7. Linux磁盘与文件系统管理 文件系统通常会将数据放在不同的区块,权限与属性放置到inode中,至于实际数据则放到datab lock区块中,另外,还有一个超级区块(superblock)会记录整个文件系统...

lazy~
26分钟前
1
0
微信公众号开发(四)

微信公众号开发时常需要一个用户授权绑定的过程。关于微信公众号的用户绑定,一般有如下两种实现方式: (1)通过发送短信验证码的方式; (2)使用用户登录时,向后端传递openid的方式。 使...

织梦之魂
今天
4
0
设计模式-工厂模式

工厂模式 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端...

HOT_POT
今天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部