JavaScriptで配列の要素を再配置する
問題
最初で唯一の引数として、数値の配列arrを受け取るJavaScript関数を作成する必要があります。
配列arrは、常に偶数の長さになります。
0 <=i
たとえば、関数への入力が-
その場合、出力は-
[-2、-4]と[2,4]の2つのグループを使用して、[-2、-4,2,4]または[2,4、-2、-4]を形成できます。
このためのコードは-
そして、コンソールの出力は-const arr = [4, -2, 2, -4];
const output = true;
出力の説明
例
const arr = [4, -2, 2, -4];
const canRearrange = (arr = []) => {
const map = arr.reduce((acc, num) => {
acc[num] = (acc[num] || 0) + 1
return acc
}, {});
const keys = Object.keys(map)
.map(key => Number(key))
.sort((a, b) => a - b)
for (const key of keys) {
if (key < 0) {
while (map[key] > 0) {
if (map[key / 2] > 0) {
map[key] -= 1
map[key / 2] -= 1
} else {
return false
}
}
} else {
while (map[key] > 0) {
if (map[key * 2] > 0) {
map[key] -= 1
map[key * 2] -= 1
} else {
return false
}
}
}
}
return true
};
console.log(canRearrange(arr));
出力
true
-
JavaScript配列slice()
JavaScriptのslice()メソッドは、配列内の選択された要素を返すために使用されます。 構文は次のとおりです- array.slice(start, end) 上記のstartパラメータは、選択を開始する場所を指定する整数ですが、endは選択が終了する場所です。 JavaScriptでslice()メソッドを実装しましょう- 例 <!DOCTYPE html> <html> <body> <h2>Demo Heading</h2> <p id="t
-
JavaScript array.values()
JavaScriptのarray.values()は、指定された配列のすべての値を含むイテレータオブジェクトを返します。 以下は、array.values()関数のコードです- 例 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" />