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

位运算技巧

位运算基础是了解源码,反码和补码。

这里补充一些别的技巧。

lowbit操作,知道该二进制数的最后一个1在第几位

#include<bits/stdc++.h>
#include<iostream>using namespace std;
int lowbit(int x){//返回最后一位1 //x&(-x)与x&(~x+1) 等价 return x&(-x);
}
int main() {int n;cin>>n;int x;int res;while(n--){cin>>x;res=0;while(x) {cout<<lowbit(x)<<" ";x-=lowbit(x);res++;}cout<<res<<" ";}return 0;
}

另外一个,知道一个二进制第k位是几的

样例,一个10进制数转化成二进制数的小程序

#include<iostream>
using namespace std;
int main(){int n;cin>>n;int a=n;int cnt=0;while(a){a=a/2;cnt++;}for(int k=cnt-1;k>=0;k--) cout<<(n>>k&1);return 0;
} 


http://www.mrgr.cn/news/59738.html

相关文章:

  • Python数值计算(33)——simpson 3/8积分公式
  • C# 企业微信机器人推送消息 windows服务应用程序的使用
  • 【Qt】系统相关——多线程、Qt多线程介绍、常用函数、线程安全、网络、UDP Socket、TCP Socket
  • 【深度学习】【OpenVINO】【C++】模型转化、环境搭建以及模型部署的详细教程
  • Maven项目管理工具-初始+环境配置
  • CSS易漏知识
  • 玩转springboot之springboot属性绑定原理
  • 【C++奇遇记】C++中的基础知识(缺省参数,函数重载,引用)
  • 二进制搭建 Kubernetes v1.20
  • Kubernetes实战——DevOps集成SpringBoot项目
  • 深入了解嵌入式硬件设计
  • SSM-Springboot笔记(2)- SpringBoot常用开发技能
  • 自拍照片P西装领带的正装,用手机就可以搞定的方法
  • 二分查找法
  • linux-i2c驱动-ap3216c
  • 电机学习-SVPWM合成原理
  • InnoDB 存储引擎<二>页结构和行结构
  • 辣椒病害检测与分类数据集(猫脸码客 第226期 )
  • 代码随想录算法训练营第四十六天 | 188.买卖股票的最佳时机IV、309.最佳买卖股票时机含冷冻期 、714.买卖股票的最佳时机含手续费
  • PyCharm虚拟环境解释器问题:Python packaging tools not found.Install packaging tools
  • 【内网攻防】内网穿透隐秘隧道搭建
  • 【计网】网络层路由过程 ,理解IP分片与组装
  • Java 设计秒杀系统
  • 【万兴科技-注册_登录安全分析报告】
  • Next.js、Prisma 和 MySQL 实践示例
  • 深度解析百度搜索引擎点击结果:如何提高网站曝光率和用户满意度