在 JavaScript 中找到从 m 达到 n 所需的最少操作数

问题

我们需要编写一个 JavaScript 函数,它接受两个数字 m 和 n 作为第一个和第二个参数。

我们的函数应该计算从 m 达到 n 所需的最小操作数,仅使用这两个操作 -

  • Double - 将显示屏上的数字乘以 2,或;

  • 递减- 从显示屏上的数字中减去 1。

例如,如果函数的输入是 -

const m = 5;

const n = 8;

那么输出应该是 -

const output = 8;

输出说明:

因为操作是 -

5 → 4 → 8

示例

此代码将是 -

const m = 5;

const n = 8;

const findOperations = (m, n) => {

   let res = 0;

   while(n > m){

      if(n % 2 === 0){

         n /= 2;

      }else{

         n += 1;

      };

      res += 1;

   };

   return res + m - n;

};

console.log(findOperations(m, n));

输出结果

控制台中的输出将是 -

2

以上是 在 JavaScript 中找到从 m 达到 n 所需的最少操作数 的全部内容, 来源链接: utcz.com/z/317449.html

回到顶部