zoukankan      html  css  js  c++  java
  • 693. Binary Number with Alternating Bits

    Given a positive integer, check whether it has alternating bits: namely, if two adjacent bits will always have different values.

    Example 1:

    Input: 5
    Output: True
    Explanation:
    The binary representation of 5 is: 101
    

    Example 2:

    Input: 7
    Output: False
    Explanation:
    The binary representation of 7 is: 111.
    

    Example 3:

    Input: 11
    Output: False
    Explanation:
    The binary representation of 11 is: 1011.
    

    Example 4:

    Input: 10
    Output: True
    Explanation:
    The binary representation of 10 is: 1010.

    含义:让我们判断一个二进制数的1和0是否是交替出现的
     1     public boolean hasAlternatingBits(int n) {
     2 //        char[] chs = Integer.toBinaryString(n).toCharArray();
     3 //        if (chs.length<2) return true;
     4 //        char evenChar = chs[0];
     5 //        char oddChar = chs[1];
     6 //        for(int i=2;i<chs.length;i++)
     7 //        {
     8 //            if (i%2 ==0)
     9 //            {
    10 //                if (evenChar != chs[i]) return false;
    11 //            }else
    12 //                if (oddChar != chs[i]) return false;
    13 //        }
    14 //        return true;
    15         int a=n<<1;
    16         int b= n^a;
    17         char[] chs = Integer.toBinaryString(b).toCharArray();
    18         for (int i=0;i<chs.length-1;i++) if (chs[i] != '1') return false;
    19         boolean result = n==(n&b);
    20         return result;
    21     }
  • 相关阅读:
    .net 网站登录
    .net controller 跳转到 controller
    c# 访问Mysql
    C#去除字符串的最后一个字符
    try catch
    MySqlDataReader
    转:十六进制颜色与RGB颜色对照表
    js:Razor视图下服务器代码给Javascript变量赋值
    .netMVC:Web页面向后台提交数据的方式和选择
    jquery方法
  • 原文地址:https://www.cnblogs.com/wzj4858/p/7732159.html
Copyright © 2011-2022 走看看