この解答例はChatGPTによって生成されています,正しいかは自己判断で。 皆の投稿からも解答例が見つかるかもしれませんよ。
BFE.devでのAI解答例 - JavaScript コーディング問題
168. ゼロを後ろに
以下はJavaScriptでの回答例です。
function moveZeros(arr) { // インデックスiから始めて0以外の値があるインデックスjを探し、iとjの値を入れ替える for (let i = 0, j = 0; j < arr.length; j++) { if (arr[j] !== 0) { let temp = arr[i]; arr[i] = arr[j]; arr[j] = temp; i++; } }}
この解法の時空間計算量は、配列の要素数をNとすると、O(N)です。配列を一度しかループしないため、空間計算量もO(N)です。