top of page

・Max Consecutive Ones

eqi9h

・Find Numbers with Even Number of Digits

7t8i2

・Squares of a Sorted Array

e5mag

・Duplicate Zeros

8eqhb

・Merge Sorted Array

eobft

Table of contents

LeetCode Arrays 101やっていき

更新日:2023年3月1日

コーディング力低いので暇な時に LeetCodeのArrays 101をやっていくことにしました

自分の受けるコーディング面接では感覚的にここら辺の問題が多かったので...


なんかメモすることがあればここに書いていきたいと思います。

 

2022/08/10


Max Consecutive Ones

/**
 * @param {number[]} nums
 * @return {number}
 */
var findMaxConsecutiveOnes = function (nums) {
  return Math.max(...nums.join("").split("0").map(x=>x.length))
};


 

Find Numbers with Even Number of Digits

/**
 * @param {number[]} nums
 * @return {number}
 */
var findNumbers = function(nums) {
  return nums.map((n) => String(n).length).filter((n) => n % 2 === 0).length;
};



 

Squares of a Sorted Array

/**
 * @param {number[]} nums
 * @return {number[]}
 */
var sortedSquares = function (nums) {
  return nums.map((n) => n * n).sort((a, b) => a - b);
};

ここまでやってみて思ったけど、流石に簡単すぎる。とりあえずもう少し進めていくか。

 

2022/08/11


Duplicate Zeros

/**
 * @param {number[]} arr
 * @return {void} Do not return anything, modify arr in-place instead.
 */
var duplicateZeros = function (arr) {
  for (let i = 0; i < arr.length; i++) {
    const item = arr[i];
    if (item === 0) {
      arr.splice(i, 0, 0);
      arr.splice(-1, 1);
      i++;
    }
  }
  return arr;
};

In placeで処理を書かないといけないので splice を使った。何度書いても毎回調べている気がする。

arr.splice(i, 0, 0) は i のインデックスに0を追加

arr.splice(-1, 1) は末尾から1要素削除


 

Merge Sorted Array



bottom of page