(八)剑指offer之1的个数和数值的整次方

1、题目描述:

输入一个整数,输出该数二进制表示中1的个数。其中负数用补码表示。

class Solution {
   
public:
     int  NumberOf1(int n) {
         int count = 0;
         while(n){
             ++count;
             n = (n-1)&n;
         }
         return count;
     }
};

2、题目描述:

给定一个double类型的浮点数base和int类型的整数exponent。求base的exponent次方。

class Solution {
public:
    double Power(double base, int exponent) {
        if(equal(base, 0.0) && exponent < 0) return 0.0;
        double result = 1.0;
        unsigned int abs_exponent = (unsigned int)exponent;

        if(exponent < 0) abs_exponent = (unsigned int)(-exponent);

        for(int i=0;i<abs_exponent;++i){
            result *= base;
        }

        if(exponent < 0)
            return 1.0 / result;
        else
            return result;
    }

    bool equal(double num1, double num2){
        if(num1 - num2 < 0.0000001 && num1 - num2 > -0.0000001)
            return true;
        else
            return false;
    }
};

如有建议或其他问题,可随时给我们留言。或者到以下链接:

https://github.com/gaobaoru/code_day

Star/Fork/Push 您的代码,开源仓库需要您的贡献。

请查看Coding 题目网址和收藏Accepted代码仓库,进行coding!!!

全部评论

相关推荐

Bug压路:老哥看得出来你是想多展示一些项目,但好像一般最多两个就够了😂页数一般一页,多的也就2页;这些项目应该是比较同质化的,和评论区其他大佬一样,我也觉得应该展示一些最拿手的(质量>数量)😁😁😁专业技能部分也可以稍微精简一些
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务