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

福建省人民政府驻京办新乡seo外包

福建省人民政府驻京办,新乡seo外包,做基因检测网站,做购物网站实例代码Every day a Leetcode 题目来源:421. 数组中两个数的最大异或值 解法1:贪心 位运算 初始化答案 ans 0。从最高位 high_bit 开始枚举 i,也就是 max⁡(nums) 的二进制长度减一。设 newAns ans 2i,看能否从数组 nums 中选两个…

Every day a Leetcode

题目来源:421. 数组中两个数的最大异或值

解法1:贪心 + 位运算

  1. 初始化答案 ans = 0。
  2. 从最高位 high_bit 开始枚举 i,也就是 max⁡(nums) 的二进制长度减一。
  3. 设 newAns = ans + 2i,看能否从数组 nums 中选两个数(低于 i 的比特位当作 000),满足这两个数的异或和等于 newAns。如果可以,则更新 ans 为 newAns,否则 ans 保持不变。

代码:

/** @lc app=leetcode.cn id=421 lang=cpp** [421] 数组中两个数的最大异或值*/// @lc code=start
class Solution
{
public:int findMaximumXOR(vector<int> &nums){int mx = *max_element(nums.begin(), nums.end());int high_bit = mx ? 31 - __builtin_clz(mx) : -1;int ans = 0, mask = 0;unordered_set<int> seen;// 从最高位开始枚举for (int i = high_bit; i >= 0; i--){seen.clear();mask |= 1 << i;int new_ans = ans | (1 << i); // 这个比特位可以是 1 吗?for (int x : nums){x &= mask; // 低于 i 的比特位置为 0if (seen.contains(new_ans ^ x)){ans = new_ans; // 这个比特位可以是 1break;}seen.insert(x);}}return ans;}
};
// @lc code=end

结果:

在这里插入图片描述

复杂度分析:

时间复杂度:O(nlog⁡U),其中 n 为 nums 的长度,U=max⁡(nums)。外层循环需要循环 O(logU) 次。

空间复杂度:O(n)。哈希表中至多有 n 个数。

http://www.yidumall.com/news/87832.html

相关文章:

  • 松江区网站制作与推广泰州百度关键词优化
  • 沈阳疫情最新消息今天新增病例seo公司优化方案
  • wordpress 主题 微信seo优化需要多少钱
  • 网页设计策划书方案百度网站优化
  • 职业教育网站建设seo关键词排名如何
  • 聚美优品网站建设产品策略推广网站seo
  • wordpress 防ddos青岛seo建站
  • 电子政务建设网站图片关键词推广是什么意思
  • 淘客手机网站源码郑州seo优化顾问热狗
  • 电子政务政府网站建设方案seo网络科技有限公司
  • 手机培训网站建设seo优化网络公司
  • 网上销售怎样做网站2022年传销最新消息
  • 淘宝网站用什么语言做的seo排名软件有用吗
  • 荆州网站建设seo全称
  • 别人网站 自己的二级域名网页制作软件有哪些
  • 网站常用的中文字体seo网站分析工具
  • 法律顾问 网站 源码珠海网站建设优化
  • 做牛排的网站百度精简版入口
  • 建设银行住房公积网站花西子网络营销策划方案
  • 深圳品牌床垫西安seo推广公司
  • 大型网站开发视频链接式友谊
  • 做图专业软件下载网站商业推广软文范例
  • 团队如何分工做网站青岛seo优化
  • iis7部署网站免费seo关键词优化服务
  • 火车头采集器网站被k免费推广的方式
  • 网站做seo第一步seo教程优化
  • 网站的优化从几个方面合肥网站制作推广
  • 网站的头尾和导航的公用文件网络营销策略理论有哪些
  • 深圳网站公司注册怎么在百度投放广告
  • 天津做网站公司百度账号管理中心