-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
Description
题目
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。
示例
示例 1:
输入: s = "anagram", t = "nagaram"
输出: true
示例 2:
输入: s = "rat", t = "car"
输出: false
解题
非常常规的桶排序思想(m 个桶中 n 个无序数进行排序)
桶排序更多其实考核的是思想而不是统一的做法
桶排序-百度百科
解题方法
/**
* @param {string} s
* @param {string} t
* @return {boolean}
*/
var isAnagram = function(s, t) {
if(s.length !== t.length) return false
const arr = new Array(26).fill(0)
for(let i = 0; i < s.length;i++) {
arr[s.codePointAt(i) - 'a'.codePointAt()]++
}
for(let i = 0; i < t.length;i++) {
--arr[t.codePointAt(i) - 'a'.codePointAt()]
if(arr[t.codePointAt(i) - 'a'.codePointAt()] < 0) {
return false
}
}
return true
};关联题
49. 字母异位词分组(普通)