《雜湊表》242. 有效的字母異位詞《leetcode》
242. 有效的字母異位詞
難度簡單305
給定兩個字串 s 和 t ,編寫一個函式來判斷 t 是否是 s 的字母異位詞。
示例 1:
輸入: s = "anagram", t = "nagaram" 輸出: true
示例 2:
輸入: s = "rat", t = "car" 輸出: false
說明:
你可以假設字串只包含小寫字母。
進階:
如果輸入字串包含 unicode 字元怎麼辦?你能否調整你的解法來應對這種情況?
通過次數175,049提交次數277,945
思路解析:
1.時間複雜度O(n) HashMap;
2.排序比較
AC程式碼1:
class Solution {
public boolean isAnagram(String s, String t) {
int n=s.length();
if(n!=t.length())
return false;
HashMap<Character,Integer>mp=new HashMap<Character,Integer>();
for(int i=0;i<n;i++)
{
if(!mp.containsKey(s.charAt(i)))
mp.put(s.charAt(i),1);
else
mp.put(s.charAt(i),mp.get(s.charAt(i))+1);
}
for(int i=0;i<n;i++)
{
if(!mp.containsKey(t.charAt(i))||mp.get(t.charAt(i))<=0)
return false;
else
mp.put(t.charAt(i),mp.get(t.charAt(i))-1);
}
return true;
}
}
AC程式碼2:
class Solution {
public boolean isAnagram(String s, String t) {
int n=s.length();
if(n!=t.length())
return false;
char s1[]=s.toCharArray();
char t1[]=t.toCharArray();
Arrays.sort(s1);
Arrays.sort(t1);
for(int i=0;i<n;i++)
if(s1[i]!=t1[i])
return false;
return true;
}
}
再提一點:
Java的HashMap和String的API可以好好複習一下。
相關文章
- leetcode【每日一題】242. 有效的字母異位詞 javaLeetCode每日一題Java
- 有效的字母異位詞
- LeetCode 242 有效的字母異位詞(JAVA)LeetCodeJava
- Leetcode——242:有效字母的異位詞LeetCode
- leedcode-有效的字母異位詞
- C語言重構【242】有效的字母異位詞C語言
- 程式碼訓練營第6天 | 雜湊表 242.有效的字母異位詞 349.兩個陣列的交集 202.快樂數 1.兩數之和陣列
- LeetCode初級演算法之字串:242 有效的字母異位詞LeetCode演算法字串
- 【leetcode 49】【字母異位詞分組】LeetCode
- 程式碼隨想錄第6天 | ●雜湊表理論基礎●242.有效的字母異位詞●349. 兩個陣列的交集●202. 快樂數●1. 兩數之和陣列
- LeetCode 49. 字母異位詞分組LeetCode
- Q23 LeetCode242 字母異位詞LeetCode
- Day 6| 242.有效的字母異位詞 、349. 兩個陣列的交集 、 202. 快樂數 、 1. 兩數之和陣列
- Q25 LeetCode49 字母異位詞分組LeetCode
- 438. 找到字串中所有字母異位詞字串
- 雜湊表(雜湊表)詳解
- 雜湊表(雜湊表)原理詳解
- 異或雜湊
- Leetcode_49_字母異位分組_mapLeetCode
- 雜湊表
- 雜湊表的原理
- 【尋跡#3】 雜湊與雜湊表
- 【LeetCode 36_雜湊表】Valid SudokuLeetCode
- 進位制雜湊
- 字串雜湊表字串
- 6.7雜湊表
- 查詢(3)--雜湊表(雜湊查詢)
- 【LeetCode 1_陣列_雜湊表】Two SumLeetCode陣列
- 幾道和雜湊(雜湊)表有關的面試題面試題
- 程式碼隨想錄演算法訓練營第六天| 242. 有效的字母異位詞、349.兩個陣列的交集、202.快樂數、1.兩數之和演算法陣列
- 深入理解雜湊表(JAVA和Redis雜湊表實現)JavaRedis
- 雜湊表應用
- 實現雜湊表
- 淺談雜湊表
- 雜湊表(Hash)的應用
- 438. 找到字串中所有字母異位詞(暴力,雙指標)2字串指標
- 符號表與雜湊表符號
- 14-1 雜湊表基礎 / Leetcode first uniq charLeetCode