python描述 LeetCode 1486. 数组异或操作

时间:2022-11-03 20:00:21


python描述 LeetCode 1486. 数组异或操作

  大家好,我是亓官劼(qí guān jié ),在【亓官劼】公众号、GitHub、B站、华为开发者论坛等平台分享一些技术博文,主要包括前端开发、python后端开发、小程序开发、数据结构与算法、docker、Linux常用运维、NLP等相关技术博文,时光荏苒,未来可期,加油~

给你两个整数,​​n​​​ 和 ​​start​​ 。

数组 ​​nums​​​ 定义为:​​nums[i] = start + 2*i​​​(下标从 0 开始)且 ​​n == nums.length​​ 。

请返回 ​​nums​​ 中所有元素按位异或(XOR)后得到的结果。

示例 1:

输入:n = 5, start = 0
输出:8
解释:数组 nums 为 [0, 2, 4, 6, 8],其中 (0 ^ 2 ^ 4 ^ 6 ^ 8) = 8 。
"^" 为按位异或 XOR 运算符。

示例 2:

输入:n = 4, start = 3
输出:8
解释:数组 nums 为 [3, 5, 7, 9],其中 (3 ^ 5 ^ 7 ^ 9) = 8.

示例 3:

输入:n = 1, start = 7
输出:7

示例 4:

输入:n = 10, start = 5
输出:2

提示:

  • ​1 <= n <= 1000​
  • ​0 <= start <= 1000​
  • ​n == nums.length​

算法实现

这里求nums中所有数的异或值,我们可以将此组成一个表达式,然后通过​​eval()​​表达式进行计算即可。

class Solution:
def xorOperation(self, n: int, start: int) -> int:
res = str(start)
for i in range(1,n):
res = res + ' ^ ' + str(start + 2*i)
res = eval(res)
return res

  大家好,我是亓官劼(qí guān jié ),在【亓官劼】公众号、GitHub、B站、华为开发者论坛等平台分享一些技术博文,主要包括前端开发、python后端开发、小程序开发、数据结构与算法、docker、Linux常用运维、NLP等相关技术博文,时光荏苒,未来可期,加油~

  如果喜欢博主的文章可以关注博主的个人公众号【亓官劼】(qí guān jié),里面的文章更全更新更快。如果有需要找博主的话可以在公众号后台留言,我会尽快回复消息,其他平台私信回复较慢。

python描述 LeetCode 1486. 数组异或操作

由于学习工作的需要,算法刷题将会逐渐由C++向Python3过度,正在过度中,如实现的不太优美,请见谅。

本文原创为【亓官劼】(qí guān jié ),请大家支持原创,部分平台一直在恶意盗取博主的文章!!! 全部文章请关注微信公众号【亓官劼】。