LeetCode 1342. 将数字变成 0 的操作次数 (Java)

  1. 将数字变成 0 的操作次数

给你一个非负整数 num ,请你返回将它变成 0 所需要的步数。 如果当前数字是偶数,你需要把它除以 2 ;否则,减去 1 。

示例 1:
输入:num = 14
输出:6
解释:
步骤 1) 14 是偶数,除以 2 得到 7 。
步骤 2) 7 是奇数,减 1 得到 6 。
步骤 3) 6 是偶数,除以 2 得到 3 。
步骤 4) 3 是奇数,减 1 得到 2 。
步骤 5) 2 是偶数,除以 2 得到 1 。
步骤 6) 1 是奇数,减 1 得到 0 。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/number-of-steps-to-reduce-a-number-to-zero
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

class Solution {
    public int numberOfSteps (int num) {
        int count=0;
        while(num!=0)
        {
            if(num%2==0)
            {
                num/=2;//如果是偶数,则除以二
                count++;
            }
            else
            {
                num-=1;//如果是奇数,则减一
                count++;
            }
        }
        return count;
    }
}
发布了36 篇原创文章 · 获赞 0 · 访问量 496

猜你喜欢

转载自blog.csdn.net/nuts_and_bolts/article/details/104670993
今日推荐