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

怎么做浏览网站的小程序长沙网络营销推广公司

怎么做浏览网站的小程序,长沙网络营销推广公司,合肥市建设工程劳务分包合同备案表在哪个网站下载,网站建设分金手指排名二五颠倒给定的 32 位无符号整数的二进制位。 提示: 请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因…

颠倒给定的 32 位无符号整数的二进制位。

提示:

请注意,在某些语言(如 Java)中,没有无符号整数类型。在这种情况下,输入和输出都将被指定为有符号整数类型,并且不应影响您的实现,因为无论整数是有符号的还是无符号的,其内部的二进制表示形式都是相同的。

解法一

#include <stdint.h>uint32_t reverseBits(uint32_t n) {uint32_t res = 0;int i;for (i = 0; i < 32; i++) {res <<= 1;res |= n & 1;n >>= 1;}return res;
}

从给定的 32 位无符号整数 n 的最低位开始,逐位取出并存放到结果 res 的最高位,然后 n 向右移动一位,res 向左移动一位,直到 n 的所有位都取完

时间复杂度分析

原始算法中,我们需要遍历给定的 32 位无符号整数的所有位,进行逐位的颠倒操作。
由于只有固定的 32 位,因此遍历的时间复杂度为 O(32),即 O(1)。

空间复杂度分析

原始算法并没有使用额外的空间,只使用了几个整型变量来保存中间结果,因此空间复杂度为 O(1)。

解法二

#include <stdint.h>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;
}

通过位运算来同时颠倒相邻的位

时间复杂度分析

优化后的算法通过位运算来同时颠倒相邻的位,而不是逐位进行操作。
通过多次使用位移和按位与运算,将原始的 32 位整数颠倒。
优化后算法的时间复杂度取决于位运算的时间复杂度,位运算的时间复杂度通常为 O(1)。
空间复杂度分析

优化后算法仍然只使用了几个整型变量来保存中间结果,因此空间复杂度也为 O(1)。

http://www.jinmujx.cn/news/119495.html

相关文章:

  • 电子商务网站有那些功能sem竞价推广托管
  • 网站建设有哪些效益外贸推广平台排名
  • 购物网站建设规划书如何进行搜索引擎的优化
  • 关于做血糖仪的网站运营和营销是一回事吗
  • 南昌哪个公司做网站好认识网络营销
  • 专业网站建设模板下载seo有名气的优化公司
  • 行业网站维护公众号软文推广
  • 网站解决方案模板站长工具日本
  • 如何在阿里巴巴建网站网站策划方案
  • 做网站公司的商标需要注册吗网络运营培训哪里有学校
  • 自适应式电影网站模板微商刚起步怎么找客源
  • 做汉字词卡的网站线上宣传渠道和宣传方式
  • 优惠做网站网络广告怎么做
  • 1网站建设公司网络营销的模式有哪些
  • 和一个网站做接口福州整站优化
  • 广州市研发网站建设多少钱大众网潍坊疫情
  • 电子商务平台网站推广企业seo推广的绝密诀窍曝光
  • 大众服务器网站网络公司网络推广服务
  • wordpress动漫模板seo关键词优化系统
  • 江门市住房建设管理局网站平台营销策略
  • wordpress支持七牛手机优化器
  • 离职删除做的网站2023年适合小学生的新闻有哪些
  • 视频网站 界面设计贵港网站seo
  • 门户网站建设报价新手怎么推广自己的店铺
  • 销售行业怎样做网站b站刺激战场视频
  • 顺德网站建设价格沧州搜索引擎优化
  • wordpress wp2pcs百度地图优化
  • 嘉兴市建设委员会网站谷歌官网下载
  • linux可以做网站开发吗海南网站网络推广
  • 外贸自建站多少钱搜索网页内容