当前位置: 代码迷 >> 综合 >> Leetcode 693. Binary Number with Alternating Bits
  详细解决方案

Leetcode 693. Binary Number with Alternating Bits

热度:77   发布时间:2023-12-12 21:22:27.0

文章作者:Tyan
博客:noahsnail.com  |  CSDN  |  简书

1. Description

Binary Number with Alternating Bits

2. Solution

  • Version 1
class Solution {
public:bool hasAlternatingBits(int n) {vector<int> bits;while(n) {bits.push_back(n & 1);n >>= 1;}for(int i = 0; i < bits.size() - 1; i++) {if(bits[i] == bits[i + 1]) {return false;}}return true;}
};
  • Version 2
class Solution {
public:bool hasAlternatingBits(int n) {int pre = - 1;while(n) {int current = n & 1;if(pre != -1 && pre == current) {return false;}n >>= 1;pre = current;}return true;}
};

Reference

  1. https://leetcode.com/problems/binary-number-with-alternating-bits/description/
  相关解决方案