怎么向百度提交网站地图,深圳跑网约车怎么样,青岛网站建设网址,房产信息网准确吗解题思路#xff1a; 首先分别将pattern字符串转为字符数组p#xff0c;将s字符串根据 切割为字符串数组s1#xff0c;判断两个数组的长度是否相等#xff0c;如果不相等#xff0c;则返回false。之后对两个数组的每个元素与哈希表做比对#xff0c;哈希表的… 解题思路 首先分别将pattern字符串转为字符数组p将s字符串根据 切割为字符串数组s1判断两个数组的长度是否相等如果不相等则返回false。之后对两个数组的每个元素与哈希表做比对哈希表的key为pattern中的元素value为s中的元素。 如果哈希表中存在当前key(p[i]),则取出当前key的value与s数组s1[i]进行对比如果不相等则返回false。 如果哈希表中不存在当前p[i]则判断是否已经存在了s1[i],如果存在则返回false如果不存在则将keyp[i],values1[i]添加到哈希表中。 代码实现 public boolean wordPattern(String pattern, String s) {MapCharacter,String mapnew HashMap();//判空if(pattern || snull){return false;}char[] pt pattern.toCharArray();String[] s1 s.split( );//判断长度是否一样if(pt.length!s1.length){return false;}for(int i0;ipt.length;i){if(map.containsKey(pt[i])){if(!map.get(pt[i]).equals(s1[i])){return false;}}else{if(map.containsValue(s1[i])){return false;}map.put(pt[i],s1[i]);}}return true;}