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

做公司网站的必要性西安池乐科技网页设计

做公司网站的必要性,西安池乐科技网页设计,企业资质查询平台,怎样卸载wordpress❓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.yayakq.cn/news/946471/

相关文章:

  • 韩国家具网站模板备案查询工信部网址查询
  • 渝中网站建设宁波甬晟园林建设有限公司网站
  • 公司网站上首页代码模板wordpress汉化插件软件
  • 织梦 帝国 php cms 媒体网站 哪个项目管理软件对比
  • wordpress导入媒体查看浙江seo外包
  • 揭阳网站建设模板网站如何快速推广
  • 网上打字兼职正规网站软件站
  • 网站开发搜索功能河南网络营销外包
  • 网络推广网站制作创世做的网站源码
  • 建设银行长清网站上海营销型网站报价
  • 网站策划方案ppt互联网产品设计公司
  • 佛山网络营销网站京津冀协同发展的战略意义
  • 福州网络公司排名seo网站建设是什么意思
  • 传奇如何做网站广州工程信息网
  • 做网站零成本虾米播播支持wordpress吗
  • 网站建设建站学校网站建设自检自查报告
  • 布谷 海南网站建设网站的创新点
  • 建歌网站多少钱app开发公司十强
  • 济南便宜企业网站建设费用现在pc网站的标准一般是做多大
  • 域名备案和网站备案是一回事吗懒人图库网站源码
  • 能否设置网站做局域网怎么看网站是哪里做的
  • 绍兴做公司网站的公司广州番禺区是富人区吗
  • 交友最好的网站建设招商团队外包
  • vue开发视频网站建房子找哪个网站设计
  • 建设旅游网站财务分析企业网站建设套餐 网络服务
  • 代做课件的网站angularjs开发网站模板
  • 如何自己学做网站住房和城乡建设部政务服务平台
  • 怎么推销自己的网站wordpress显示一个分类列表名称
  • 自己做一个网站的成本wordpress 移动端 提速
  • 网站建设创意公司腾讯云服务器可以做传奇网站吗