给定两个大小相等的数组 A 和 B,A 相对于 B 的优势可以用满足 A[i] > B[i] 的索引 i 的数目来描述。返回 A 的任意排列,使其相对于 B 的优势最大化。示例 1:输入:A = [2,7,11,15], B = [1,10,4,11]输出:[2,11,7,15]示例 2:输入:A = [12,24,8,32], B = [13,25,32,11]输出:[24,32,8,12]
2 回答

蝴蝶刀刀
TA贡献1801条经验 获得超8个赞
function comp(arr1,arr2){ var arr=[]; arr1.sort(function(a,b){ return a-b; }); arr2.forEach(function(item){ var index=arr1.findIndex(function(_item){ return _item>item; }); if(index>-1){ arr.push(arr1.splice(index,1)[0]); }else{ arr.push(arr1.splice(0,1)[0]); } }); return arr; } console.log(comp([2,7,11,15],[1,10,4,11])); console.log(comp([12,24,8,32],[13,25,32,11]));

千巷猫影
TA贡献1829条经验 获得超7个赞
A = [12, 24, 8, 32], B = [13, 25, 32, 11] A.sort((a, b) => b - a)let A1 = [...B].sort((a, b) => b - a).reduce((res, val) => { res[B.indexOf(val)] = A[0] > val ? A.shift() : A.pop() return res }, new Array(A.length))console.log(A1)
- 2 回答
- 0 关注
- 1120 浏览
添加回答
举报
0/150
提交
取消