190. 颠倒二进制位

题目

 

代码

class Solution {
public:uint32_t reverseBits(uint32_t n) {n=(n>>16)|(n<<16);n=((n&0xff00ff00)>>8)|((n&0x00ff00ff)<<8);n=((n&0xf0f0f0f0)>>4)|((n&0x0f0f0f0f)<<4);n=((n&0xcccccccc)>>2)|((n&0x33333333)<<2);n=((n&0xaaaaaaaa)>>1)|((n&0x55555555)<<1);return n;// for 8 bit binary number abcdefgh, the process is as follow:// abcdefgh -> efghabcd -> ghefcdab -> hgfedcba}
};

 

思路

步骤:

1、将n的左边16位和右边16位进行交换。

2、将n的左边16位中的左边8位和右边8位交换,右边16位同理。

3、将......左边8位中的左边4位和右边4位交换....

 

所以可以基本明白这种交换的方式就是每次先交换一半,然后再交换这两个一半中的一半,直到交换到1位。

转载于:https://www.cnblogs.com/lizhenghao126/p/11053613.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/352777.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux--date命令 date命令

Linux--date命令 date命令 date命令的功能是显示和设置系统日期和时间。 该命令的一般格式为&#xff1a; date [选项] 显示时间格式&#xff08;以开头&#xff0c;后面接格式&#xff09; date 设置时间格式 命令中各选项的含义分别为&#xff1a; -d datestr, --date datest…

为某人命名以重新连接到您的服务器

在进行测试自动化时&#xff0c;通常需要知道当前计算机的名称&#xff0c;以提示另一台计算机连接到它&#xff0c;特别是在并行运行测试的情况下。 本周&#xff0c;我试图对服务器进行测试&#xff0c;以使其连接回在从属测试计算机上运行的WireMock服务器。 堆栈溢出的标准…

as转html5工具,将keras的h5模型转换为tensorflow的pb模型

背景&#xff1a;目前keras框架使用简单&#xff0c;很容易上手&#xff0c;深得广大算法工程师的喜爱&#xff0c;但是当部署到客户端时&#xff0c;可能会出现各种各样的bug&#xff0c;甚至不支持使用keras&#xff0c;本文来解决的是将keras的h5模型转换为客户端常用的tens…

暑假第六周

刘思翔来深圳玩&#xff0c;陪玩 转载于:https://www.cnblogs.com/cts1234/p/9664244.html

linux shell数据重定向(输入重定向与输出重定向)详细分析

在了解重定向之前&#xff0c;我们先来看看linux 的文件描述符。 linux文件描述符&#xff1a;可以理解为linux跟踪打开文件&#xff0c;而分配的一个数字&#xff0c;这个数字有点类似c语言操作文件时候的句柄&#xff0c;通过句柄就可以实现文件的读写操作。 用户可以自定义文…

计算机科学技术的教育应用论文,浅谈计算机科学技术在计算机教学中的应用论文...

计算机科学&#xff0c;研究计算机及其周围各种现象和规律的科学&#xff0c;亦即研究计算机系统结构、程序系统(即软件)、人工智能以及计算本身的性质和问题的学科。计算机科学是一门包含各种各样与计算和信息处理相关主题的系统学科&#xff0c;从抽象的算法分析、形式化语法…

socketserver和socket的补充(验证客户端合法性)

一、socket的补充 1、参数 socket.socket(familyAF_INET,typeSOCK_STREAM,proto0,filenoNone) 参数说明&#xff1a; family 地址系列应为AF_INET(默认值ipv4),AF_INET6(ipv6),AF_UNIX,AF_CAN或AF_RDS。 (AF_UNIX 域实际上是使用本地 socket 文件来通信) type 套接字类型应为…

使用Spring Boot和Spring Security验证JWT

对于我当前的项目&#xff0c;我将使用Spring Boot设置REST API &#xff08;最有可能使用BoxFuse运行&#xff09;。 为了能够使用API​​端点&#xff0c;应用程序将检查传入的请求是否具有较早提供的有效JWT令牌 &#xff08;由我信任的API服务提供&#xff09;。 为了实现…

怎么查看linux文件夹下有多少个文件

ls | wc -w是查看有多少个文件及文件夹ls | wc -c这个查看目录下多少个文件. 使用wc命令 具体通过wc --help 可以查看。如&#xff1a;wc -l filename 就是查看文件里有多少行 wc -w filename 看文件里有多少个word。 wc -L filename 文件里最长的那一行是多少个字…

[转]xargs详解

为什么要用xargs&#xff0c;问题的来源 在工作中经常会接触到xargs命令&#xff0c;特别是在别人写的脚本里面也经常会遇到&#xff0c;但是却很容易与管道搞混淆&#xff0c;本篇会详细讲解到底什么是xargs命令&#xff0c;为什么要用xargs命令以及与管道的区别。为什么要用x…

计算机桌面图片怎么设置大小,怎么设置桌面壁纸大小

很多人都知道怎麽设置电脑桌面&#xff0c;可真正找到适合自己屏幕的可能很少&#xff0c;图片或大或小&#xff0c;小编为大家分享了设置桌面壁纸大小的方法&#xff0c;下面大家跟着小编一起来了解一下吧。设置桌面壁纸大小方法先查看自己电脑屏幕分辨率&#xff0c;方法&…

html5 clip,canvas中使用clip()函数裁剪方法

未使用裁剪绘制一个圆*{margin:0;padding:0;}html,body{width:100%;height:100%;overflow:hidden;background-color:#AFAFAF;}varcanvasdocument.getElementById(canvas),contextcanvas.getContext(2d);canvas.widthdocument.body.clientWidth;canvas.heightdocument.body.clie…

linux中管道符的简单使用

管道符&#xff0c;可以把两条命令连起来&#xff0c;具体来说有两种应用&#xff0c;如下&#xff1a; 1. 例如&#xff1a; ps aux | grep "media" 在 ps aux中的結果中查找media。 2. 例如&#xff1a; find . -name "*.cpp" | xargs grep "cl…

51 nod 1522 上下序列——序列dp

题目&#xff1a;http://www.51nod.com/onlineJudge/questionCode.html#!problemId1522 很好的思想。考虑从小到大一对一对填数&#xff0c;这样也能对它的大小限制做一些操作了。 因为从小到大&#xff0c;所以只能全填在左边、全填在右边、两边各填一个。记录左边填到了哪个位…

spring tiles_Spring MVC 3模板和Apache Tiles

spring tiles对于任何Web应用程序&#xff0c;有效的设计考虑因素是使用模板引擎&#xff08;或工具&#xff09;&#xff0c;并且由于具有Spring的“可插拔”特性&#xff0c;集成模板机制&#xff08;例如Apache Tiles&#xff09;确实要容易得多。 在这篇简单的文章中&#…

流程图用计算机if怎么写,if语句流程图

使用if语句实现单分支、两分支和使用switch语句实现多分支的程序程序1、if 语句有下面三种情况。第一种&#xff0c;条件成立就做。不成立就不做。if (条件)程序endif第二种&#xff0c;条件成立做“程序一”&#xff0c;不成立做“程序二”。不管条件成不成立都做。if (条件)程…

CENTOS 7 踢用户_从零学ELK系列(三):Centos安装Docker(超详细图文教程)

CSDN博客地址&#xff08;关注&#xff0c;点赞&#xff09;人工智能推荐GitHub&#xff08;Star,Fork,Watch&#xff09;【前言】为了更加真实的模拟生产部署环境&#xff0c;不仅需要Linux环境支持&#xff0c;而且ELK需要在不同的机器上部署&#xff1b;再重新装几台虚拟机&…

boost开发指南

C确实很复杂&#xff0c;神一样的0x不知道能否使C变得纯粹和干爽&#xff1f; boost很复杂&#xff0c;感觉某些地方有过度设计和太过于就事论事的嫌疑&#xff0c;对实际开发工作的考虑太过于理想化。学习boost本身就是一个复杂度&#xff0c;有魄力在项目中广泛采用boost复杂…

打游戏提示计算机丢失,Windows7电脑运行某游戏提示“计算机丢失mxvcp120.dll”怎么办...

许多用户都很喜欢在windows7系统中玩一些游戏&#xff0c;而在玩游戏的时候难免碰上一些错误提示&#xff0c;比如最近有windows7系统用户发现在运行某款游戏的时候&#xff0c;提示“计算机丢失mxvcp120.dll”&#xff0c;导致无法继续玩游戏&#xff0c;要怎么解决呢&#xf…

如何开发一个可运维系统的一点体会

本文来自网易云社区作者&#xff1a;施勇我们在开发一个复杂系统的时候&#xff0c;常常会强调服务化、模块化、松散耦合等要求以达到高可用、高可靠及高性能等目的&#xff1b;比较少的人会考虑到系统的方便部署配置和运维&#xff0c;至少是在刚开始设计系统的时候很少考虑到…