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

常见位运算公式使用场景

  • 判断奇偶性:数值 x 为偶数当且仅当 (x & 1) == 0。数值 x 为奇数当且仅当 (x & 1) == 1

  • 交换两个数:使用异或操作符 ^ 进行交换。假设有变量 a 和 b,则可以使用以下公式交换它们的值:

a = a ^ b;
b = a ^ b;
a = a ^ b;
  • 取绝对值:使用按位与操作符 & 和减法操作符 - 取绝对值。假设有变量 x,则可以使用以下公式获取 x 的绝对值:
int absX = (x ^ (x >> 31)) - (x >> 31);
  • 判断二进制数中1的个数:使用位计数算法。假设有变量 x,则可以使用以下公式计算 x 中1的个数:
int count = 0;
while (x != 0) {count++;x = x & (x - 1);
}
  • 判断是否是2的幂:使用位与操作符 & 和按位取反操作符 ~。假设有变量 x,则可以使用以下公式判断 x 是否是2的幂:
boolean isPowerOfTwo = x > 0 && (x & (x - 1)) == 0;
http://www.lryc.cn/news/171559.html

相关文章:

  • virtualbox配置ubuntu1804虚拟机相关流程
  • 防火墙基本概念
  • 易点易动固定资产管理平台:打通BMP,实现高效流程管理与全生命周期管理
  • uniapp webview实现双向通信
  • Linux动态库
  • ESP-IDF学习——1.环境安装与hello-world
  • 【算法】二分答案
  • 阿曼市场最全开发攻略,看这一篇就够了
  • 探讨UUID和Secrets:确保唯一性与数据安全的利器
  • 06-Redis缓存高可用集群
  • LCP 18.早餐组合
  • Tomcat调优【精简版】
  • 通过NDK编译C程序运行在iMX6q开发板上
  • 【学习笔记】Java 一对一培训(2.1)Java基础语法
  • 外贸独立站哪家好?推荐的独立站建站平台?
  • 六、变量与常量
  • Fork() 函数:“父” 与 “子” 进程的交互(进程的创建)
  • JupyterNotebook设置Python环境的方法步骤
  • 腾讯云阿里云云服务器 Linux 操作系统 BT 宝塔面板快速建站教程
  • 【Linux】死锁理解
  • 基于Java所涉及的人工智能的框架
  • 【力扣】三角形最小路径和
  • 【Linux】指针常量和常量指针
  • LCP 22.黑白方格画
  • Java并发编程第8讲——ThreadLocal详解
  • 2023复旦大学计算机科学技术(网络空间安全)保研记录
  • linux系统通过docker安装python的jieba,如何找到jieba路径替换分词文件
  • Python Functions-函数
  • 【人工智能】机器学习的入门与提升
  • WEB漏洞原理之---【XMLXXE利用检测绕过】