文档章节

Word Pattern

tiantian1994
 tiantian1994
发布于 2017/03/31 16:16
字数 240
阅读 4
收藏 0

Given a pattern and a string str, find if str follows the same pattern.

Here follow means a full match, such that there is a bijection between a letter in pattern and a non-empty word in str.

Examples:

  1. pattern = "abba", str = "dog cat cat dog" should return true.
  2. pattern = "abba", str = "dog cat cat fish" should return false.
  3. pattern = "aaaa", str = "dog cat cat dog" should return false.
  4. pattern = "abba", str = "dog dog dog dog" should return false.

 

Notes:
You may assume pattern contains only lowercase letters, and str contains lowercase letters separated by a single space.

 

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();
        System.out.println("请输入一串字符串(以空格分割):");
        String y = sc.nextLine();
        System.out.println("是否符合");
        boolean s = wordPattern(x,y);
        System.out.println(s);

    }
    public static boolean wordPattern(String pattern, String str) {
        int temp = 0;
        boolean re=false;
        char [] p= pattern.toCharArray() ;
        String [] sp= str.split(" ");
        if (p.length == sp.length){
            System.out.println("11");
            for(int i=0;i<p.length-1;i++){
                for(int j=i+1;j<p.length;j++){
                    if(((p[i]==p[j])&&(sp[i].equals(sp[j])==false))||((p[i]!=p[j])&&(sp[i].equals(sp[j])==true))){
                        temp++;
                    }
                }
            }
            System.out.println(temp);
            if(temp ==0){
                re = true;
            }
        }

        return re;
    }


}

 

© 著作权归作者所有

共有 人打赏支持
上一篇: 最长单词
下一篇: Reverse String
tiantian1994
粉丝 1
博文 15
码字总数 3889
作品 0
南京
私信 提问
Linux自学笔记——Bash脚本之数组以及内置字符串处理

数组: 程序=指令+数据 指令:command 数据:变量、文件 变量:存储单个元素的内存空间; 数组:存储多个元素的连续的内存空间; 数组名:整个数组只有一个名字; 数组索引:编号从0开始; ...

claude_liu
2017/09/29
0
0
shell编程(二)

博主名: 李常明 博文地址: http://keep88.blog.51cto.com 此笔记出自老男孩书籍: 跟老男孩学linux运维 shell编程实战 shell变量知识进阶与实践 1、shell中的特殊位置参数变量: 例如: 1)...

咖啡猫Mr
2017/05/31
0
0
Bash编程之数组和字符串处理

Bash编程之数组和字符串处理 目录 笔记日期20180405 数组 声名(创建)数组declare -a ARRAY_NAME 数组元素的赋值ARRAY_NAME=("VAL1" "VAL2" "VAL3"...) 引用数组元素:${ARRAY_NAME[INDEX]} ......

Winthcloud
2018/06/29
0
0
890. Find and Replace Pattern - LeetCode

Question 890. Find and Replace Pattern Solution 题目大意:从字符串数组中找到类型匹配的如xyy,xxx 思路: Java实现:

yysue
2018/08/21
0
0
JAVA编程导入Word文件到数据区域,实现多个word文件合并

在开发项目时,如何通过后台编程把多个Word文档合并到一起呢,这就需要借助PageOffice开发平台中的数据区域了。 具体实现步骤如下: 第一步:拷贝文件到WEB项目的“WEB-INF/lib”目录下。拷贝...

yert
2013/04/24
0
0

没有更多内容

加载失败,请刷新页面

加载更多

使用Maven打包Docker镜像-Jenkins版

前提:Jenkins服务器上安装好Docker,创建Jenkins任务,配置好代码来源,和Build配置: pom.xml中添加docker-maven-plugin: <plugin> <groupId>com.spotify</groupId> <artifactI......

莫在全
22分钟前
0
0
rabbitmq

灰暗
今天
1
0
Flink

flink HA部署 flink搭建,采用分布式部署方式,分别为A,B,C三个节点。其中A为master;A,B,C为worker。 本文使用的用户是hadoop用户(自己新建) 先决条件 Java 1.8.x or higher scala 自己使用...

-九天-
今天
2
0
数据中台和传统数仓的区别

中台系统把业务层同性的算法能力,服务能力,业务能力高度集成,有效组织 ,动态规划。更好的帮助上层业务。 今天就让我们看看关于数据中台的问答吧。 1 Q : 什么是数据中台? A : 数据中台是...

hblt-j
今天
5
0
Java在什么时候会出现内存泄漏

在Java中,内存泄漏就是存在一些被分配的对象,这些对象有下面两个特点,首先,这些对象是可达的,即在有向图中,存在通路可以与其相连;其次,这些对象是无用的,即程序以后不会再使用这些对...

群星纪元
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部