LeetCode-單詞規律
題目要求
原題連結:290. 單詞規律
給定一種規律 pattern 和一個字串 str ,判斷 str 是否遵循相同的規律。
這裡的 遵循 指完全匹配,例如, pattern 裡的每個字母和字串 str 中的每個非空單詞之間存在著雙向連線的對應規律。
示例1:
輸入: pattern = "abba", str = "dog cat cat dog"
輸出: true
示例 2:
輸入:pattern = "abba", str = "dog cat cat fish"
輸出: false
示例 3:
輸入: pattern = "aaaa", str = "dog cat cat dog"
輸出: false
示例 4:
輸入: pattern = "abba", str = "dog dog dog dog"
輸出: false
解題過程
雜湊表
class Solution {
public boolean wordPattern(String pattern, String s) {
char[] chArr = pattern.toCharArray();
Map<Character,String> map = new HashMap<>();
String[] sArr = s.split(" ");
if(chArr .length != sArr.length) return false;
for(int i = 0; i < chArr.length; i++){
// key存在的情況
if(map.containsKey(chArr[i])){
if(!map.get(chArr[i]).equals(sArr[i])) return false;
}else{
// 此時key不存在
// 如果兩個value的值相同,則false
if(map.containsValue(sArr[i])) return false;
map.put(chArr[i], sArr[i]);
}
}
return true;
}
}
相關文章
- leedcode-單詞規律
- LeetCode-290-單詞規律LeetCode
- EMS單號規律與順豐單號規律(C#)C#
- 【LeetCode】290. Word Pattern 單詞規律(Easy)(JAVA)每日一題LeetCodeJava每日一題
- A Multiplication Game (博弈,規律)GAM
- 打表找規律
- 【LeetCode-面試演算法經典-Java實現】【139-Word Break(單詞拆分)】LeetCode面試演算法Java
- leetcode-動態規劃總結LeetCode動態規劃
- PostgreSQL中英文混合分詞特殊規則(中文單字、英文單詞)-中英分明SQL分詞
- HDU 6298 Maximum Multiple(找規律)
- HDU 4951 Multiplication table(找規律)
- 正規表示式查詢相似單詞的方法
- 圖片跨域規律探尋跨域
- 索引的應用規律總結索引
- Java欄位初始化規律Java
- 單詞
- 軟體開發的21條規律
- votedisk在ASM diskgroup上的存放規律ASM
- 單詞小卡片 -- 從單詞、例句收集到命令式背單詞
- Python裡的引用與拷貝規律Python
- python3 中 and 和 or 運算規律Python
- 事理圖譜:事件演化的規律和模式事件模式
- 顧森——《追逐語言的規律》(視訊)
- 一個80後總結就業規律就業
- Shareaholic:社交分享和閱讀的規律
- log_buffer的記憶體分配規律記憶體
- webpack單詞Web
- 單詞拆分
- 單詞遊戲遊戲
- 這款解謎遊戲的開發者是"自然規律"遊戲
- 計算出大小有什麼走勢圖規律
- Touring cities (找規律 哈密爾頓迴路)
- HDU4342 History repeat itself數學規律題
- HDU5139 Formula (找規律+離線處理)ORM
- 程式設計師的成功是否有規律可循?程式設計師
- day01-字串方法-邏輯運算子規律字串
- 「央視新聞」1分快3大小單雙規律破解方法《手機搜狐網》
- 10:單詞排序排序