美文网首页算法很美
是不是2的整数次方

是不是2的整数次方

作者: FiveZM | 来源:发表于2019-12-13 23:46 被阅读0次
/*
    用一条语句判断一个整数是不是2的整数次方
    这题的普通思路是,将这个数一直模以2,再除以2
    还要判断一个特殊的数字1,因为1是2的0次方
    但是有另一个一个方法就是,用二进制来计算
    其实要看是不是2的整数次方,其实就看二进制中是否只有一个1,
    如果只有一个1的话,那就证明是2的整数次方
    2的0次方为1, 2的1次方为2 , 2的2次方为4

    算法: 通过 n-1 后再与运算 n 得出为0 ,即结果是2的整数次方
 */
import java.util.Scanner;

public class 是不是2的整数次方 {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        if (((n - 1) & n) == 0)
            System.out.println(true);
        else
            System.out.println(false);
    }
}

相关文章

  • 是不是2的整数次方

  • 位运算之对2的整数次方判断

    题目: 不用循环 一条语句判断是不是2的整数次方 tip:2的整数次方二进制数表示上只有一个1(除1外). 两个样...

  • 10 二进制中1的个数

    结果: 相关: 判断一个整数是不是2的整数次方把这个整数减去1之后再和它自己做与运算,这个整数中唯一的1就会变成0...

  • Leetcode.190.Reverse Bits

    题目 给定一个无符号整数, 求2进制翻转后的结果. 思路 将整数分解为2的i次方的和, 如果含有2的i次方, 结果...

  • js支持的整数的有效范围

    js支持的整数的有效范围是,-2的53次方至2的53次方也就是-9007199254740992~90071992...

  • 次方

    次方最基本的定义:设a为某数,n为正整数,a的n次方表示为 aⁿ ,表示n个a连乘所得的积。如2³ = 2 * 2...

  • Number对象

    在 javascript 中整数的最大取值范围是 -2的53次方 ~ 2的53次方 Number 常用的一些方法 ...

  • 判断一个数是否是2的幂次方,并求其以2为底的对数

    1. 快速判断一个整数是不是2的幂次方一个数如果是2的幂次方,则它的二进制表示中只有一个1,1后面其他位都是0,如...

  • 326. Power of Three

    题目分析 题目链接,登录 LeetCode 后可用题目要求是让我们判断一个整数是不是 3 的次方数。首先将整数分为...

  • 【11】整数问题

    题11.1 已知,求证:(1) 不是整数。(2) 区间中没有整数。 证明 (1) 假设是正整数,则关于b的二次方程...

网友评论

    本文标题:是不是2的整数次方

    本文链接:https://www.haomeiwen.com/subject/kxoqnctx.html