当前位置: 首页 > news >正文

泰安建设网站哪个好搜索网站有哪几个

泰安建设网站哪个好,搜索网站有哪几个,上海黄浦网站建设,做ppt哪个网站好❓693. 交替位二进制数 难度:简单 给定一个正整数,检查它的二进制表示是否总是 0、1 交替出现:换句话说,就是二进制表示中相邻两位的数字永不相同。 示例 1: 输入:n 5 输出:true 解释&#…

❓693. 交替位二进制数

难度:简单

给定一个正整数,检查它的二进制表示是否总是 0、1 交替出现:换句话说,就是二进制表示中相邻两位的数字永不相同。

示例 1:

输入:n = 5
输出:true
解释:5 的二进制表示是:101

示例 2:

输入:n = 7
输出:false
解释:7 的二进制表示是:111.

示例 3:

输入:n = 11
输出:false
解释:11 的二进制表示是:1011.

提示:

  • 1 < = n < = 2 31 − 1 1 <= n <= 2^{31} - 1 1<=n<=2311

💡思路:

基础知识必知:一篇文章搞懂位运算

法一:数学

  • n转换成二进制以10结尾的数;
  • 然后使用数学除法,除以 4,判断余数的二进制是否为10(对应的十进制为 2),如果不是,则不是交替位二进制数,返回false

法二:位运算

对于 1010 这种位级表示的数,把它向右移动 1 位得到 101,这两个数每个位都不同,因此异或得到的结果为 1111

  1. 对输入 n 的二进制表示右移一位后,得到的数字再与 n 按位异或得到 a

    • 当且仅当输入 n交替位二进制数时,a 的二进制表示全为 111(不包括前导 000)。
  2. aa+1 按位与,当且仅当 a 的二进制表示全为 1 时,结果为 0

结合上述两步,可以判断输入是否为交替位二进制数

🍁代码:(Java、C++)

法一:数学
Java

class Solution {public boolean hasAlternatingBits(int n) {if((n & (-n)) == 1) n >>= 1;while(n > 0){if(n % 4 != 2) return false;n /= 4;}return true;}
}

C++

class Solution {
public:bool hasAlternatingBits(int n) {if((n & (-n)) == 1) n >>= 1;while(n > 0){if(n % 4 != 2) return false;n /= 4;}return true;}
};

法二:位运算
Java

class Solution {public boolean hasAlternatingBits(int n) {int a = (n ^ (n >>> 1));return (a & (a + 1)) == 0;}
}

C++

class Solution {
public:bool hasAlternatingBits(int n) {long a = (n ^ (n >> 1));return (a & (a + 1)) == 0;}
};

🚀 运行结果:

在这里插入图片描述

🕔 复杂度分析:

  • 时间复杂度 O ( 1 ) O(1) O(1),仅使用了常数时间来计算。
  • 空间复杂度 O ( 1 ) O(1) O(1),使用了常数空间来存储中间变量。

题目来源:力扣。

放弃一件事很容易,每天能坚持一件事一定很酷,一起每日一题吧!
关注我 leetCode专栏,每日更新!

注: 如有不足,欢迎指正!

http://www.dt0577.cn/news/35890.html

相关文章:

  • 可以嗅探付费视频地址的软件宁波seo优化排名
  • 上海web网站开发新手做网络销售难吗
  • 网站模板间距360推广登陆入口
  • 网站建设的一些销售技巧企业品牌推广网站
  • 搜索企业信息的网站优化网站排名工具
  • 电商要多少钱才可以做百度智能小程序怎么优化排名
  • 室外绿化工程施工方案久久建筑网南和网站seo
  • 行业网站产品选择企业微信营销系统
  • wordpress导入xml失败西安百度seo排名
  • 松原手机网站开发制作网站的步骤和过程
  • 做淘宝网站销售怎么样做网站哪个公司最好
  • 网站如何做访客统计谷歌官网网址
  • 私域流量运营seo效果检测步骤
  • 做去自己的网站首页百度seo学院
  • wordpress卡出翔seo排名优化排行
  • 做网站的成功案例电商平台推广费用大概要多少
  • 建设部网站如何登录监理工程师重庆seo入门教程
  • html5 企业网站网络热词英语
  • 做网站用什么系统较好国内看不到的中文新闻网站
  • wordpress关闭多站点企业宣传软文范例
  • 做网站背景图片浪漫爱情厦门百度竞价
  • 南昌网站seo公司搜外
  • 网站推广公司哪网络促销的方法有哪些
  • 网站页脚代码郑州网络推广报价
  • java php开发网站建设互联网营销模式有哪些
  • 福州企业建站系统模板北京网络seo推广公司
  • 网站首页图专业黑帽seo
  • 软件开发的基本过程谷歌优化技巧
  • 网站开发页面友情链接网址
  • 做润滑油网站图片项目推广计划书