当前位置 博文首页 > Aays2790的博客:leetcode290. 单词规律(Javascript)

    Aays2790的博客:leetcode290. 单词规律(Javascript)

    作者:[db:作者] 时间:2021-09-08 13:42

    在这里插入图片描述
    思路:双哈希表法,创建两个Map类型分别存储规律->字符串,字符串->规律,每次遍历都验证两个表是否已经存在对应值,如果不存在则添加

    var wordPattern = function(pattern, s) {
    	let map1=new Map()
    	let map2=new Map()
    	let strArr=s.split(" ")
    	if(strArr.length!==pattern.length){
       	 	return false
    	}
    	for(let i=0;i<s.length;i++){
        	if(map1.has(pattern[i])){
            	if(map1.get(pattern[i])!==strArr[i]){
                	return false
            	}
       		}
            if(map2.has(strArr[i])){
       			if(map2.get(strArr[i])!==pattern[i]){
           			return false
       			}
        	}
             map1.set(pattern[i],strArr[i])
             map2.set(strArr[i],pattern[i])
    }
    	return true
    };
    

    在这里插入图片描述
    时间复杂度O(n),空间复杂度O(1)

    cs