Java經典算法:單詞模式

給定一個模式和一個字符串str,找出str是否遵循相同的模式。在此跟隨是指完全匹配,因此模式中的字母與str中的非空單詞之間存在雙射。
Java解決方案
public boolean wordPattern(String pattern, String str) {
String[] arr = str.split(" ");

//prevent out of boundary problem
if(arr.length != pattern.length())
    return false;

HashMap<Character, String> map = new HashMap<Character, String>();
for(int i=0; i<pattern.length(); i++){
    char c = pattern.charAt(i);
    if(map.containsKey(c)){
        String value = map.get(c);
        if(!value.equals(arr[i])){
            return false;
        }
    }else if (map.containsValue(arr[i])){
        return false;
    }
    map.put(c, arr[i]);
}

return true;}

最後,開發這麼多年我也總結了一套學習Java的資料與面試題,如果你在技術上面想提升自己的話,可以關注我,私信發送領取資料或者在評論區留下自己的聯繫方式,有時間記得幫我點下轉發讓跟多的人看到哦。在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章