网易首页 > 网易号 > 正文 申请入驻

2025-10-02:不同 XOR 三元组的数目Ⅰ。用go语言,给你一个长度为 n 的数组 nums,数组恰好包含 1 到 n

0
分享至

2025-10-02:不同 XOR 三元组的数目Ⅰ。用go语言,给你一个长度为 n 的数组 nums,数组恰好包含 1 到 n 这 n 个整数(每个数出现一次)。

对任意满足 i ≤ j ≤ k 的下标三元组,把对应的三个元素按位异或得到一个数,称为该三元组的异或结果。

问在所有可能的下标三元组中,这些异或结果一共能出现多少个不同的值,并返回这个不同值的个数。

1 <= n == nums.length <= 100000。

1 <= nums[i] <= n。

nums 是从 1 到 n 的整数的一个排列。

输入: nums = [3,1,2]。

输出: 4。

解释:

可能的 XOR 三元组值包括:

  • • (0, 0, 0) → 3 XOR 3 XOR 3 = 3

  • • (0, 0, 1) → 3 XOR 3 XOR 1 = 1

  • • (0, 0, 2) → 3 XOR 3 XOR 2 = 2

  • • (0, 1, 2) → 3 XOR 1 XOR 2 = 0

不同的 XOR 值为 {0, 1, 2, 3},因此输出为 4。

题目来自力扣3513。

解决过程分析 1. 关键观察(脑筋急转弯)

这个问题的核心是一个数学洞察:对于给定的排列,所有可能的三元组异或结果的不同值数量只与数组长度n有关,而与数组中元素的具体排列顺序无关。

2. 算法逻辑

  • 当 n ≤ 2 时:直接返回 n。因为当数组元素很少时,所有可能的异或结果就是数组元素本身。

  • 当 n > 2 时:返回1 << bits.Len(uint(n)),这里的bits.Len(uint(n))计算的是能够表示数字 n 所需的最小二进制位数。

3. 具体计算步骤

以输入nums = [3,1,2](n=3)为例:

  1. 1. 计算bits.Len(uint(3)):数字 3 的二进制是11,需要 2 位来表示

  2. 2. 计算1 << 2:即 2 的 2 次方,结果为 4

  3. 3. 最终输出为 4,与题目示例一致

4. 数学原理说明

这种简洁解法的背后原理是:当 n > 2 时,所有可能的异或结果恰好构成一个从 0 到2^k - 1的连续整数集合,其中 k 是满足2^k ≥ n的最小整数。这利用了异或运算的完备性和排列的特殊性质。

复杂度分析 时间复杂度:O(1)

  • • 算法只进行了常数次操作:检查 n 的大小,计算二进制位数,执行位运算

  • • 与输入规模 n 无关,是常数时间复杂度

空间复杂度:O(1)
  • • 只使用了固定数量的变量(n 的存储等),没有使用随输入规模增长的额外数据结构

  • • 是常数空间复杂度

Go完整代码如下:

package main import (     "fmt"     "math/bits" ) func uniqueXorTriplets(nums []int)int {     n := len(nums)     if n <= 2 {         return n     }     return1 << bits.Len(uint(n)) } func main() {     nums := []int{3, 1, 2}     result := uniqueXorTriplets(nums)     fmt.Println(result) }

Python完整代码如下:

# -*-coding:utf-8-*- def unique_xor_triplets(nums: list[int]) -> int:     """     对于长度 n 的排列 nums(包含 1..n),当 n <= 2 时返回 n,     否则返回 2^(floor(log2(n)) + 1),即 1 << n.bit_length()。     """     n = len(nums)     if n <= 2:         return n     return 1 << n.bit_length() if __name__ == "__main__":     nums = [3, 1, 2]     result = unique_xor_triplets(nums)     print(result)

我们相信人工智能为普通人提供了一种“增强工具”,并致力于分享全方位的AI知识。在这里,您可以找到最新的AI科普文章、工具评测、提升效率的秘籍以及行业洞察。 欢迎关注“福大大架构师每日一题”,发消息可获得面试资料,让AI助力您的未来发展。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
30岁男子误喝过期牛奶 短短7个月体重暴跌53斤

30岁男子误喝过期牛奶 短短7个月体重暴跌53斤

闪电新闻
2026-02-24 22:06:32
360元一斤的“天价”草莓引热议,企业宣称灌溉一次需用800斤牛奶兑水?专家:就是营销噱头

360元一斤的“天价”草莓引热议,企业宣称灌溉一次需用800斤牛奶兑水?专家:就是营销噱头

封面新闻
2026-02-26 01:37:14
连爆大冷16强决出11席:常冰玉出局!赵心童4-2豪取11连胜

连爆大冷16强决出11席:常冰玉出局!赵心童4-2豪取11连胜

求球不落谛
2026-02-26 05:04:46
多地4S店关闭!宝马开年“大跳水”:7系降超40万,销量跌回7年前

多地4S店关闭!宝马开年“大跳水”:7系降超40万,销量跌回7年前

新浪财经
2026-02-25 15:28:38
“福特”号航母650个厕所坏了近9成,近5000人上厕所排队要四五十分钟,美军只能先停靠希腊

“福特”号航母650个厕所坏了近9成,近5000人上厕所排队要四五十分钟,美军只能先停靠希腊

大象新闻
2026-02-24 12:44:26
《飞驰人生》片尾感谢王思聪借出千万豪车当背景,韩寒这面子真大

《飞驰人生》片尾感谢王思聪借出千万豪车当背景,韩寒这面子真大

草莓解说体育
2026-02-26 00:44:23
索赔超80亿美元,李嘉诚出手了!

索赔超80亿美元,李嘉诚出手了!

财经三分钟pro
2026-02-25 12:27:12
难以置信!一深圳牌迈巴赫登热搜,车尾箱堆满土特产,挂一笼土鸡

难以置信!一深圳牌迈巴赫登热搜,车尾箱堆满土特产,挂一笼土鸡

火山詩话
2026-02-24 21:56:12
平顶山打人事件的二次通报,看完让人后背发凉

平顶山打人事件的二次通报,看完让人后背发凉

清书先生
2026-02-25 17:01:07
近百万元存款被悄悄转走!上海独居老太毫无察觉,还说“我有两套房,你可以搬来同住”

近百万元存款被悄悄转走!上海独居老太毫无察觉,还说“我有两套房,你可以搬来同住”

潇湘晨报
2026-02-25 16:39:13
我刚从台湾回来:说实话很难听,但这就是真实的台湾省现状了

我刚从台湾回来:说实话很难听,但这就是真实的台湾省现状了

番外行
2026-02-24 19:45:01
张兰撒谎风波升级!细节证明孩子非新生儿,产房被扒是月子中心

张兰撒谎风波升级!细节证明孩子非新生儿,产房被扒是月子中心

古希腊掌管月桂的神
2026-02-25 16:35:25
恐怖! 华人富商被女子约会引诱 惨遭绑架撕票埋尸荒野! 人财两失

恐怖! 华人富商被女子约会引诱 惨遭绑架撕票埋尸荒野! 人财两失

北国向锡安
2026-02-25 09:32:28
为啥谷爱凌的神秘父亲总被传是谷歌5号员工,有人心思毒硬贴金

为啥谷爱凌的神秘父亲总被传是谷歌5号员工,有人心思毒硬贴金

安宁007
2026-02-25 13:36:55
5-0,41岁C罗兴奋挥手庆祝:一球一助,率队10连胜+一夜升至榜首

5-0,41岁C罗兴奋挥手庆祝:一球一助,率队10连胜+一夜升至榜首

侧身凌空斩
2026-02-26 04:54:34
越扒越劲爆!释永信在少林寺的奢靡生活,你想都不敢想!

越扒越劲爆!释永信在少林寺的奢靡生活,你想都不敢想!

青橘罐头
2026-02-25 22:44:55
天价拖车费后续,交警介入,拖车公司求删视频退钱,当事人拒和解

天价拖车费后续,交警介入,拖车公司求删视频退钱,当事人拒和解

社会日日鲜
2026-02-25 12:17:53
中华人民共和国和德意志联邦共和国联合新闻声明

中华人民共和国和德意志联邦共和国联合新闻声明

新华社
2026-02-25 21:46:25
全网好奇,谷爱凌嘴里咬的东西是啥?

全网好奇,谷爱凌嘴里咬的东西是啥?

有意思报告
2026-02-25 12:25:30
4-1!斯诺克大冷门:周跃龙淘汰世界第2,争夺140万大红包!

4-1!斯诺克大冷门:周跃龙淘汰世界第2,争夺140万大红包!

刘姚尧的文字城堡
2026-02-26 06:38:56
2026-02-26 08:24:49
moonfdd incentive-icons
moonfdd
福大大架构师每日一题
1136文章数 58关注度
往期回顾 全部

科技要闻

“机器人只跳舞,没什么用”

头条要闻

日本计划部署导弹部队距台湾仅110公里 中方强硬表态

头条要闻

日本计划部署导弹部队距台湾仅110公里 中方强硬表态

体育要闻

勇士爆冷惜败鹈鹕 梅尔顿28分赛季新高

娱乐要闻

黄晓明新恋情!与小22岁美女同游新加坡

财经要闻

上海楼市放大招,地产预期别太大

汽车要闻

750km超长续航 2026款小鹏X9纯电版将于3月2日上市

态度原创

时尚
本地
数码
手机
军事航空

“复古甜心”穿搭突然大火!春天穿时髦又减龄

本地新闻

津南好·四时总相宜

数码要闻

音质降噪全升级!三星Buds 4系列正式发布 179美元起

手机要闻

小米还是第一,vivo已不是第二,OPPO、荣耀顺延

军事要闻

美政府给新伊核协议设限内容遭披露

无障碍浏览 进入关怀版