Leetcode—421.数组中两个数的最大异或值【中等】明天写一下字典树做法!!!

2023每日刷题(十九)

Leetcode---421.数组中两个数的最大异或值

算法思想

参考自灵茶山艾府

实现代码

cpp 复制代码
class Solution {
public:
    int findMaximumXOR(vector<int>& nums) {
        int maxValue = *max_element(nums.begin(), nums.end());
        int highIdx = maxValue ? 31 - __builtin_clz(maxValue) : -1;
        int ans = 0;
        int mask = 0;
        unordered_set<int> pre;
        for(int i = highIdx; i >= 0; i--) {
            mask |= 1 << i;
            int new_ans = ans | (1 << i);
            pre.clear();
            for(auto x: nums) {
                x &= mask;
                if(pre.contains(x ^ new_ans)) {
                    ans = new_ans;
                    break;
                }
                pre.insert(x);
            }
        }
        return ans;
    }
};

运行结果

之后我会持续更新,如果喜欢我的文章,请记得一键三连哦,点赞关注收藏,你的每一个赞每一份关注每一次收藏都将是我前进路上的无限动力 !!!↖(▔▽▔)↗感谢支持!

相关推荐
过期的秋刀鱼!14 小时前
机器学习-带正则化的成本函数-
人工智能·python·深度学习·算法·机器学习·逻辑回归
ScilogyHunter14 小时前
前馈/反馈控制是什么
算法·控制
sweetone14 小时前
反用高通滤波电路提升低频的实例
经验分享·音视频
_OP_CHEN14 小时前
【算法基础篇】(四十八)突破 IO 与数值极限:快速读写 +__int128 实战指南
c++·算法·蓝桥杯·算法竞赛·快速读写·高精度算法·acm/icpc
程序员泠零澪回家种桔子14 小时前
RAG自查询:让AI精准检索的秘密武器
人工智能·后端·算法
玖釉-15 小时前
[Vulkan 实战] 深入解析 Vulkan Compute Shader:实现高效 N-Body 粒子模拟
c++·windows·图形渲染
云泽80815 小时前
深入浅出 C++ 继承:从基础概念到模板、转换与作用域的实战指南
开发语言·c++
a***592615 小时前
C++跨平台开发:挑战与实战指南
c++·c#
十五年专注C++开发15 小时前
CMake进阶:模块模式示例FindOpenCL.cmake详解
开发语言·c++·cmake·跨平台编译
糖葫芦君15 小时前
TRPO-trust region policy optimization论文讲解
人工智能·算法·机器学习·强化学习