1460. 通过翻转子数组使两个数组相等 - 力扣(LeetCode)
easy
/**
* @param {number[]} target
* @param {number[]} arr
* @return {boolean}
*/
var canBeEqual = function(target, arr) {
if(target.length!=arr.length){
return false
}
let map = new Map();
for(let i=0;i<target.length;i++){
if(map.has(target[i])){
let index = map.get(target[i])
map.set(target[i],index+1)
}else{
map.set(target[i],1)
}
}
for(let j=0;j<arr.length;j++){
const val = arr[j]
if(map.has(val)){
let index = map.get(val)
if(index>0){
index--
map.set(val,index)
}
}else{
return false;
}
}
for(let [key,values] of map){
if(values!=0){
return false;
}
}
return true
};
执行结果:通过
执行用时:72 ms, 在所有 JavaScript 提交中击败了53.93%的用户
内存消耗:44 MB, 在所有 JavaScript 提交中击败了23.60%的用户
通过测试用例:106 / 106
/**
* @param {number[]} target
* @param {number[]} arr
* @return {boolean}
*/
var canBeEqual = function(target, arr) {
if(target.length!=arr.length){
return false
}
target.sort((a,b)=>a-b)
arr.sort((a,b)=>a-b)
return target.join('')===arr.join('')
};
执行结果:通过
执行用时:76 ms, 在所有 JavaScript 提交中击败了31.46%的用户
内存消耗:43.2 MB, 在所有 JavaScript 提交中击败了66.29%的用户
通过测试用例:106 / 106