LeetCode算法笔记–判定字符是否唯一
01.01. 判定字符是否唯一
题目:
实现一个算法,确定一个字符串 s 的所有字符是否全都不同。
示例1:
输入: s = “leetcode”
输出: false
示例2:
输入: s = “abc”
输出: true
限制:
0 <= len(s) <= 100
如果你不使用额外的数据结构,会很加分。
我的解答:
1 2 3 4 5 6 7 8 9
|
var isUnique = function(astr) { let astr_arr = astr.split("") let unique_arr = Array.from(new Set(astr_arr)) return astr_arr.length === unique_arr.length ? true :false };
|
01.02. 判定是否互为字符重排
题目:
给定两个字符串 s1 和 s2,请编写一个程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。
示例1:
输入: s1 = “abc”, s2 = “bca”
输出: true
示例2:
输入: s1 = “abc”, s2 = “bad”
输出: false
限制:
0 <= len(s1) <= 100
0 <= len(s2) <= 100
我的解答:
1 2 3 4 5 6 7 8 9 10 11 12
|
var CheckPermutation = function(s1, s2) { return transStrToSortedArr(s1) == transStrToSortedArr(s2) ? true : false };
var transStrToSortedArr = function(_str){ return _str.split("").sort((a,b)=>{return a.charCodeAt()-b.charCodeAt()}).join("") }
|