LeetCode刷题记录11——290. Word Pattern(easy)
生活随笔
收集整理的這篇文章主要介紹了
LeetCode刷题记录11——290. Word Pattern(easy)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
LeetCode刷題記錄11——290. Word Pattern(easy)
目錄
LeetCode刷題記錄11——290. Word Pattern(easy)
題目
語言
思路
源碼
后記
題目
本題輸入是兩個字符串,輸出是true或者false。計算過程為:依照字符串pattern的模板,去看字符串str的格式是否與pattern的相匹配,是則true,否則false。舉個例子:有點類似小時候成語的格式一樣:紅紅火火(aabb)、不了了之(abba)……。這題類似:abba->dog cat cat dog。
語言
java
思路
并行查看模式和字符串,比較他們最后出現的索引。使用map創建一個對象mymap,使用mymap.put的方法,該方法的意思應該是:如果第二次put進同樣的key不同value,返回的值是被擠掉的那個value!不然就是null。
源碼
public boolean wordPattern(String pattern, String str) {String[] words = str.split(" ");if (words.length != pattern.length())return false;Map mymap = new HashMap();for (Integer i=0; i<words.length; ++i)if (mymap.put(pattern.charAt(i), i) != mymap.put(words[i], i))return false;return true;
}
后記
此題方法借鑒于Stefan Pochmann大神的思路,具體可看Stefan Pochmann大神的原話
總結
以上是生活随笔為你收集整理的LeetCode刷题记录11——290. Word Pattern(easy)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: LeetCode刷题记录10——434.
- 下一篇: LeetCode刷题记录12——232.