阿里中间件秋招笔试

7.6

题目说明

有一个字符串它的构成是词+空格的组合,如“北京 杭州 杭州 北京”, 要求输入一个匹配模式(简单的以字符来写), 比如 aabb, 来判断该字符串是否符合该模式, 举个例子:

  1. pattern = "abba", str="北京 杭州 杭州 北京" 返回 ture
  2. pattern = "aabb", str="北京 杭州 杭州 北京" 返回 false
  3. pattern = "baab", str="北京 杭州 杭州 北京" 返回 ture
public class Solution {
	public boolean wordPattern(String pattern, String str) {

	}
}
package per.wmx.demo;



/*
阿里巴巴笔试

* 有一个字符串它的构成是词+空格的组合,如“北京 杭州 杭州 北京”, 要求输入一个匹配模式(简单的以字符来写),
* 比如 aabb, 来判断该字符串是否符合该模式, 举个例子:

pattern = "abba", str="北京 杭州 杭州 北京" 返回 ture
pattern = "aabb", str="北京 杭州 杭州 北京" 返回 false
pattern = "baab", str="北京 杭州 杭州 北京" 返回 ture
*
* */
public class Solution {
    public static boolean wordPattern(String pattern, String str) {
        boolean flag= true;
        String [] strs=str.split(" ");    //用空格split
        char [] chars = pattern.toCharArray();

        if(chars.length!=strs.length){
            flag=false;
        }

        char []tempPattern =new char[strs.length];    //存放临时的匹配模式     与输入的匹配模式,比对

        int record=1;
        for (int i=0;i

 

好像有点复杂,复杂度有点高,但是测试的都可以。

 

算法一直是我的弱项,希望慢慢提升

等期末考完试每天写道算法

 

你可能感兴趣的:(java,算法,面试)