#力扣 LeetCode 1342. 将数字变成 0 的操作次数 @FDDLC
发布日期:2021-06-30 21:01:30 浏览次数:2 分类:技术文章

本文共 518 字,大约阅读时间需要 1 分钟。

题目描述:

 

Java代码:

class Solution { //非负整数 num    public int numberOfSteps (int num) {        int answer=0;        while(num!=0){            num=(num&1)==0?num>>1:num-1;            answer++;        }        return answer;    }}

 

Java代码二:

class Solution {    public int numberOfSteps (int num) {        return num==0?0:((num&1)==0?numberOfSteps(num>>1):numberOfSteps(num-1))+1;    }}

 

 

Java代码三:

class Solution {    public int numberOfSteps (int n) {        return Integer.toBinaryString(n).length()+Integer.bitCount(n)-1;    }}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

转载地址:https://liuxingchang.blog.csdn.net/article/details/111705138 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:#力扣 LeetCode 39. 组合总和 @FDDLC
下一篇:#力扣 LeetCode176. 第二高的薪水 @FDDLC

发表评论

最新留言

感谢大佬
[***.8.128.20]2024年04月26日 14时14分38秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章