【LeetCode】136.只出现一次的数字

1. 题目

2. 分析

这题考察的是基本的位运算。位运算作为程序员必备的基础知识,没有理由忘记。 本题涉及到的知识点是异或运算

3. 代码

非常简洁的一版代码:

python 复制代码
class Solution:
    def singleNumber(self, nums: List[int]) -> int:
        return reduce(lambda a, b: a ^ b, nums)

这版代码里面使用了多个常用的Python函数。一个一个来分析:

  • reduce()函数
    reduce(function, iterable[, initializer])函数接受两个参数,分别是functioniterable[]。第二个 代表需要处理的数据集合,第一个参数代表用什么函数处理。
    reduce函数的执行逻辑就是:
  • 匿名函数
    本题中传入的参数是一个匿名函数lambda a,b : a^b 这个函数的入参是a,b,返回的结果就是a^b
相关推荐
csdn_aspnet11 分钟前
C++ (Naive Partition Algorithm)朴素划分算法
数据结构·c++·算法
eggrall12 分钟前
找到字符串中所有字母异位词(medium)
算法·leetcode·职场和发展
_日拱一卒17 分钟前
LeetCode:230二叉搜索树中第K小的元素
算法
Struggle_975522 分钟前
算法知识-背包dp
算法
ZPC821025 分钟前
Linux 共享内存(shm)
算法
水木流年追梦27 分钟前
大模型入门-应用篇2-RAG (检索增强生成):从原理到 Python 实战
开发语言·python·算法·prompt
数智工坊28 分钟前
【连续动作空间算法2】TD3:DDPG的终极进化,根治连续控制中的函数近似误差
论文阅读·人工智能·算法·计算机视觉
洛水水38 分钟前
【力扣100题】25. 搜索二维矩阵 II
算法·leetcode·矩阵
样例过了就是过了38 分钟前
LeetCode热题100 多数元素
c++·算法·leetcode·贪心算法
白羊by39 分钟前
YOLOv8 官方损失函数详解(按任务分类)
人工智能·深度学习·算法·yolo·分类