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;
    }
};
相关推荐
算AI13 小时前
人工智能+牙科:临床应用中的几个问题
人工智能·算法
hyshhhh14 小时前
【算法岗面试题】深度学习中如何防止过拟合?
网络·人工智能·深度学习·神经网络·算法·计算机视觉
杉之15 小时前
选择排序笔记
java·算法·排序算法
Naive_715 小时前
蓝桥杯准备(前缀和差分)
java·职场和发展·蓝桥杯
烂蜻蜓16 小时前
C 语言中的递归:概念、应用与实例解析
c语言·数据结构·算法
OYangxf16 小时前
图论----拓扑排序
算法·图论
我要昵称干什么16 小时前
基于S函数的simulink仿真
人工智能·算法
AndrewHZ16 小时前
【图像处理基石】什么是tone mapping?
图像处理·人工智能·算法·计算机视觉·hdr
念九_ysl16 小时前
基数排序算法解析与TypeScript实现
前端·算法·typescript·排序算法
守正出琦16 小时前
日期类的实现
数据结构·c++·算法