242.有效的字母异位词

时游小于 1 分钟LeetCode

242.有效的字母异位词

/*
 * @lc app=leetcode.cn id=242 lang=typescript
 *
 * [242] 有效的字母异位词
 */

// @lc code=start
// function isAnagram(s: string, t: string): boolean {
// 	let s1 = s.split("").sort().join("");
// 	let t1 = t.split("").sort().join("");

//     if(s1.includes(t1) && s1.length == t1.length) return true

// 	return false;
// }

// 计数
function isAnagram(s: string, t: string): boolean {
	if (s.length != t.length) return false;

	let counter: {
		[key: string]: number;
	} = {};

	// 先遍历s
	for (let i = 0; i < s.length; i++) {
		let char = s[i];
		counter[char] = counter[char] ? counter[char] + 1 : 1;
	}
	// 遍历t
	for (let i = 0; i < t.length; i++) {
		if (!counter[t[i]]) return false;
		let char = t[i];
		counter[char]--;
	}

	return true;
}

console.log(isAnagram("aacc", "ccac"));

// @lc code=end

上次编辑于:
贡献者: 15327360835
Loading...