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

交换奇偶位:交换一个整数的二进制的奇偶位置(仅考虑正数情况)

方法二:

设计思想:

     0xAAAAAAAA 的二进制表示为 10101010...(从最低位开始)
     0x55555555 的二进制表示为 01010101...(从最低位开始)

问题:更加想不到掩码!!!!!!!!!!!!

方法一:

设计思想:

     1.在32位bit的二进制中,遍历每个字节,分别找出num的奇偶数
    (1)偶数num=2*i(i=0),奇数num=2*i+1(i=0)
    (2)将数字“1”分别左移偶/奇对应的位置,再和num相与,即可得到num二进制上的偶/奇数
     2.奇偶交换实现
    (1) (num & (1 << (2 * i))):意味着找到了num上的奇/偶数
    (2)(移动一位)将偶数左移、奇数右移,或者将偶数右移、奇数右移,都可以实现奇偶数字相互交换
    (3)交换结果【或运算】被添加到ou/ji中,这样ou/ji就会在每次循环后保存所有已处理的偶数/奇数位

问题:

想不到!根本想不到!!!!!!!!!

void swap(int num)
{int ou = 0; //用一个整数存储偶数位int ji = 0; //用一个整数存储奇数位//方法二ou = num & 0xAAAAAAAA;//掩码:获取所有偶数位ji = num & 0x55555555;ou >>= 1;//右移偶数位,左移奇数位ji <<= 1;//方法一//int i = 0;//for (i = 0; i < 32; i++)//{//	ou |= (num & (1 << (2 * i))) << 1; //将偶数位左移一位后与ou进行或运算//	ji |= (num & (1 << (2 * i + 1))) >> 1; //将奇数位右移一位后与ji进行或运算//}num = ou | ji; //将偶数位和奇数位进行或运算,得到交换后的结果printf("%d\n", num); 
}
int main()
{int num = 5;swap(num);return 0;
}

相关文章:

交换奇偶位:交换一个整数的二进制的奇偶位置(仅考虑正数情况)

方法二&#xff1a; 设计思想&#xff1a; 0xAAAAAAAA 的二进制表示为 10101010...&#xff08;从最低位开始&#xff09; 0x55555555 的二进制表示为 01010101...&#xff08;从最低位开始&#xff09; 问题&#xff1a;更加想不到掩码&#xff01;&#xff01;&#xf…...

Unity中的两种ScriptingBackend

一&#xff1a;前言 二&#xff1a;两种模式的介绍 ios&#xff1a;unity只有il2cpp模式的编译才支持64位系统&#xff0c;mono是不支持的&#xff0c;在快速开发阶段仍然支持Mono&#xff0c;但是不能再向Apple提交Mono(32位)的应用 苹果在2016年1月就要求所有新上架游戏必须支…...

vue3硅谷甄选01 | 使用vite创建vue3项目及项目的配置 环境准备 ESLint配置 prettier配置 husky配置 项目集成

文章目录 使用vite创建vue3项目及项目的配置1.环境准备2.项目配置ESLint校验代码工具配置 - js代码检测工具1.安装ESLint到开发环境 devDependencies2.生成配置文件:.eslint.cjs**3.安装vue3环境代码校验插件**4. 修改.eslintrc.cjs配置文件5.生成ESLint忽略文件6.在package.js…...

蓝牙核心规范(V5.4)10.5-BLE 入门笔记之HCI

HCI全称:HOST Constroller Interface 主机控制器接口(HCI)定义了一个标准化的接口,通过该接口,主机可以向控制器发出命令,并且控制器可以与主机进行通信。规范被分成几个部分,第一部分仅从功能的角度定义接口,不考虑具体的实现机制,而其他部分定义了在使用四种可能的…...

【计算机毕业设计】基于SpringBoot+Vue记帐理财系统的设计与实现

博主主页&#xff1a;一季春秋博主简介&#xff1a;专注Java技术领域和毕业设计项目实战、Java、微信小程序、安卓等技术开发&#xff0c;远程调试部署、代码讲解、文档指导、ppt制作等技术指导。主要内容&#xff1a;毕业设计(Java项目、小程序、安卓等)、简历模板、学习资料、…...

2023年中国研究生数学建模竞赛E题

出血性脑卒中临床智能诊疗建模 一、背景介绍 出血性脑卒中指非外伤性脑实质内血管破裂引起的脑出血&#xff0c;占全部脑卒中发病率的10-15%。其病因复杂&#xff0c;通常因脑动脉瘤破裂、脑动脉异常等因素&#xff0c;导致血液从破裂的血管涌入脑组织&#xff0c;从而造成脑部…...

基于springboot+vue的大学生科创项目在线管理系统

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…...

什么是文档签名证书?PDF文档怎么签名?

什么是文档签名证书&#xff1f;在“互联网”时代&#xff0c;电子合同、电子证照、电子病历、电子保单等各类电子文档无纸化应用成为常态。如何让电子文档的签署、审批具有公信力及法律效力&#xff0c;防止伪造签名、假冒签名等问题出现&#xff0c;是电子文档无纸化应用的主…...

2023年汉字小达人区级比赛倒计时2天,最新问题解答和真题练一练

今天是9月23日&#xff0c;距离2023年第十届汉字小达人区级比赛&#xff08;初赛&#xff09;的自由报名参赛时间还有2天&#xff0c;六分成长结合家长和小朋友们问的比较多的问题进行解答&#xff0c;并提供一些真题供大家练习、了解比赛题型和规则。 问题1&#xff1a;2023年…...

关于地址存放的例题

unsigned int a 0x1234; unsigned char b *(unsigned char*)&a; 上面代码大端存储和小端存储的值分别是多少&#xff1f; 大端存储的是把高位地址存放在低位地址处&#xff0c;低位存放到高位。小端是高位存放在高位&#xff0c;低位在低位。因为a是整型&#xff0c;所…...

Flume最简单使用

文章目录 一、简介1、定义2、基础架构 二、快速入门1、解压Flume2、案例一&#xff1a;监控端口号3、案例二&#xff1a;将空目录下文件 三、Flume进阶1、Flume事务2、Flume Agent内部原理3、案例一&#xff1a;监控日志4、案例二&#xff1a;多路复用和拦截器适应4.1 原理4.2 …...

第2章 Java集合

2.1 谈谈你对Java集合的理解 难度:★★★ 重点:★★★★ 白话解析 集合类的概念还是比较重要的,不仅面试经常问,实际开发中也离不开。如果能把这道题真正理解了,集合可以说基本上没问题了。 集合就用来用存数据的,它提供了对数据增删改查和统计大小等方法。在Java中集合…...

YOLOv5、YOLOv8改进:C3STR(Swin Transformer)

目录 1.介绍 2. YOLOv5、YOLOv8改进 2.1 common.py配置 2.2 yolo.py配置 2.3 yaml配置文件 1.介绍 视觉领域正在见证从 CNN 到 Transformers 的建模转变&#xff0c;纯 Transformer 架构在主要视频识别基准测试中达到了最高准确度。这些视频模型都建立在 Transformer 层之…...

AIGC百模大战

AIGC Artificial Intelligence Generated Content&#xff0c; 或者Generative Artificial Intelligence&#xff0c;它能够生成新的数据、图像、语音、视频、音乐等内容&#xff0c;从而扩展人工智能系统的应用范围。 生成式人工智能有可能给全球经济带来彻底的变化。根据高盛…...

docker jira 一键安装含PJ(docker 一键安装jira)

docker jira 一键安装含PJ&#xff08;docker 一键安装jira&#xff09; 本文仅供参考学习&#xff0c;请勿用于商业用途本文用于Jira在Docker的安装&#xff0c;仅用于记录安装方式转载请注明来源Linux安装可参考链接Windows安装可查考链接Docker一键安装Confluence PJ条件允…...

认识一下Git

目录 Git Git下载 Git安装 Git初始化 Git操作 Git、GitLab、和Eclipse是公司中软件开发常用的组合&#xff1a; 1. Git&#xff1a;Git是一种分布式版本控制系统&#xff0c;用于跟踪文件和代码的变化。它提供了管理代码仓库的功能&#xff0c;可以记录每次提交的修改&am…...

只需4步使用Redis缓存优化Node.js应用

介绍 通过API获取数据时&#xff0c;会向服务器发出网络请求&#xff0c;收到响应数据。但是&#xff0c;此过程可能非常耗时&#xff0c;并且可能会导致程序响应时间变慢。 我们使用缓存来解决这个问题&#xff0c;客户端程序首先向API发送请求&#xff0c;将返回的数据存储…...

【react基础01】项目文件结构描述

react 项目文件结构描述 &#x1f4c2; REACTWORKSPACE&#x1f4c2; node_modules&#x1f4c2; public&#x1f4c4; favicon.ico&#x1f4c4; index.html&#x1f4c4; logo192.png&#x1f4c4; logo512.png&#x1f4c4; manifest.json&#x1f4c4; robots.txt &#x1…...

光电开关-NPN-PNP

基础概念 有信号 “检测到物体/有物体遮挡” 工作原理 NPN&#xff1a;表示共正电压&#xff0c;输出负电压【只能输出低电压或者悬空 常开常闭是指 输出有没有跟“地”接通】&#xff1b; NPN NO&#xff1a;表示常态下是常开的&#xff0c;检测到物体时黑色线输出一个负电压…...

学会使用Git 和 GitHub

Git 和 GitHub 都是程序员每天都要用到的东西 —— 前者是目前最先进的 版本控制工具&#xff0c;拥有最多的用户&#xff0c;且管理着地球上最庞大的代码仓库&#xff1b;而后者是全球最大 同性交友 代码托管平台、开源社区。 在没有这两个工具时&#xff0c;编程可能是这样的…...

别再手动P图了!用Python+Flask 5分钟搭建一个车牌图片生成API(支持蓝黄绿白黑牌)

5分钟构建车牌生成API&#xff1a;用PythonFlask打造高定制化图像服务 在自动化测试和图像处理领域&#xff0c;生成逼真的车牌图像是一个常见但容易被低估的需求。无论是用于车牌识别算法的训练数据增强&#xff0c;还是作为开发测试的模拟数据源&#xff0c;一个灵活的车牌生…...

HER2-AuNPs,HER2靶向肽偶联金纳米粒,反应步骤

HER2-AuNPs&#xff0c;HER2靶向肽偶联金纳米粒&#xff0c;反应步骤HER2-AuNPs&#xff0c;HER2靶向肽偶联金纳米粒的描述与反应步骤一、引言金纳米粒&#xff08;AuNPs&#xff09;因其独特的光学性质、高比表面积、良好的生物相容性和表面功能化能力&#xff0c;在生物医学、…...

光度立体三维重建中的光源标定:从理论到Matlab实践

1. 光度立体三维重建与光源标定的基础概念 想象一下你正在用手电筒照射一个苹果&#xff0c;随着手电筒角度的变化&#xff0c;苹果表面的明暗也会跟着改变。光度立体三维重建就是利用这个原理&#xff0c;通过分析物体在不同光照条件下的明暗变化&#xff0c;来还原物体的三维…...

胡桃讲编程・蓝屏急救进阶:磁盘修复 + 引导修复 + 网络修复,排除法根治顽固蓝屏

&#xff08;微星 GL62M 7REX 地下程序员实操版 | 上期指令无效必看&#xff09;哈喽各位自学开发、被蓝屏折磨到头疼的小伙伴们&#xff0c;我是胡桃&#xff5e;上一期咱们讲了三种高频蓝屏触发场景&#xff0c;还有系统修复的基础命令&#xff0c;不少朋友留言说&#xff1a…...

LangChain教程-、Langchain基础妨

简介 AI Agent 不仅仅是一个能聊天的机器人&#xff08;如普通的 ChatGPT&#xff09;&#xff0c;而是一个能够感知环境、进行推理、自主决策并调用工具来完成特定任务的智能系统&#xff0c;更够完成更为复杂的AI场景需求。 AI Agent 功能 根据查阅的资料&#xff0c;agent的…...

论文阅读:arxiv 2026 Don‘t Let the Claw Grip Your Hand: A Security Analysis and Defense Framework for Ope

总目录 大模型安全研究论文整理 2026年版&#xff1a;https://blog.csdn.net/WhiffeYF/article/details/159047894 Don’t Let the Claw Grip Your Hand: A Security Analysis and Defense Framework for OpenClaw https://arxiv.org/pdf/2603.10387 arxiv 2026 | OpenClaw安…...

[具身智能-283]:从某种意义上看,卷积核也是一种平面空间注意力机制,有两层含义:一个卷积核只关注某一特征,一次移动关注卷积核对应的局部区域。

这个观点实际上是从信息筛选和资源分配的角度&#xff0c;重新解构了卷积操作的物理意义。将卷积核视为一种“平面空间注意力机制”&#xff0c;不仅逻辑自洽&#xff0c;而且精准地揭示了CNN处理信息的两个核心维度&#xff1a;特征维度的专一性和空间维度的局部性。我们可以顺…...

从零入门RAG:手把手教你构建大模型知识增强系统

本文深入解析RAG&#xff08;检索增强生成&#xff09;技术&#xff0c;阐述其解决大模型知识缺失、滞后及幻觉问题的核心优势&#xff0c;对比RAG与微调、Agent的适用场景&#xff0c;并拆解RAG的九步实现流程及四大核心组件&#xff08;知识嵌入、向量数据库、检索器、生成器…...

实战指南:构建坚不可摧的vCenter HA高可用集群

1. 为什么你的企业需要vCenter HA高可用集群 记得去年有个客户半夜给我打电话&#xff0c;说他们的vCenter突然宕机&#xff0c;整个虚拟化平台瘫痪了。当时正是业务高峰期&#xff0c;损失惨重。这就是典型的单点故障问题——vCenter作为整个vSphere环境的大脑&#xff0c;一旦…...

Monolog Bridge 高级用法:FingersCrossed策略与HTTP状态码激活机制完全指南 [特殊字符]

Monolog Bridge 高级用法&#xff1a;FingersCrossed策略与HTTP状态码激活机制完全指南 &#x1f680; 【免费下载链接】monolog-bridge Provides integration for Monolog with various Symfony components 项目地址: https://gitcode.com/gh_mirrors/mo/monolog-bridge …...