class Solution {
public:
int findMaximumXOR(vector<int>& nums) {
int max=0;
int mask=0;
unordered_set<int> s;
for(int i=31;i>=0;i--)
{
s.clear();
mask=mask|(1<<i);
for(int num:nums)
{
s.insert(num&mask);
}
int candidate=max|(1<<i);
for(int num:s)
{
if(s.find(num^candidate)!=s.end())
{
max=candidate;
break;
}
}
}
return max;
}
};
421. Maximum XOR of Two Numbers in an Array
最新推荐文章于 2021-11-25 11:51:02 发布