DOJO004

  • Dashool 創辦人
  • 喜歡調酒
  • Rails、Nextjs、TypeScript

來刷 LeetCode 吧! 04. 1342. Number of Steps to Reduce a Number to Zero

LeetCode


題目分析 

給一個整數 num,計算它減少到 0 的步驟數。 
如果 num 為偶數,將 num / 2。 
如果 num 為奇數,將 num - 1。 

第一直覺 

宣告一個 count 紀錄步驟數。 
使用 while 迴圈進行判斷、計算。 
var numberOfSteps = function (num) {
  let count = 0;
  while (num > 0) {
    if (num % 2 === 0) {
      num = num / 2;
    } else {
      num = num - 1;
    }
    count ++;
  }
  return count;
};

較簡潔的寫法

 
while 迴圈內部改為三元運算式。
 
var numberOfSteps = function (num) {
  let count = 0;
  while (num > 0) {
    num = num % 2 === 0 ? num / 2 : num - 1;
    count ++;
  }
  return count;
};

版權所有 © 2023 DOJO004

Deployed on Zeabur