leetcode 693.交替位二进制数

1.题目要求:

2.题目代码:

csharp 复制代码
class Solution {
public:
    bool hasAlternatingBits(int n) {
        int num = n;
        //设置数组存入二进制位
        vector<int> array;
        while(num){
            array.push_back(num % 2); 
            num = num / 2;
        }
        //把数组颠倒就能得到此数真正二进制位
        reverse(array.begin(),array.end());
        //进行判断
        for(int i = 1;i< array.size();i++){
            if(array[i] == array[i - 1]){
                return false;
            }
        }
        return true;
    }
};
相关推荐
lueluelue472 小时前
LeetCode:链表
算法·leetcode·链表
橘子汽水1685 小时前
Leetcode 23,543合并K个升序链表,二叉树的直径
算法·leetcode·链表
huameinan狮子5 小时前
Adaboost算法原理与计算实例
算法
别怪我很水5 小时前
API中提供了VelocityTracker类用于计算触摸事件MotionEvent的速度,而其内部默认使用的方法就是最小二乘法,本 ...
算法·gitee·最小二乘法
Re.不晚8 小时前
挑战做100道力扣算法- DAY1
算法·leetcode·职场和发展
蓝悦无人机9 小时前
《Planning algorithms》读书笔记——第1章 引言
算法·读书笔记·规划算法·lavalle
Sagittarius_A*9 小时前
分组密码基础(二):Feistel 结构与 DES 的设计思想
算法·信息安全·密码学·des·数论
青山木9 小时前
Hot 100 --- 搜索插入位置
java·数据结构·算法·leetcode
alexwang21110 小时前
HDU 4348 详细题解
c++·算法·题解·hdu·主席树·可持久化数据结构·可持久化线段树