力扣:136. 只出现一次的数字(Python3)

题目:

给你一个 非空 整数数组 nums ,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。

你必须设计并实现线性时间复杂度的算法来解决此问题,且该算法只使用常量额外空间。

来源:力扣(LeetCode)

链接:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台

示例:

示例 1:

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

输出:1

示例 2:

输入:nums = [4,1,2,1,2]

输出:4

示例 3:

输入:nums = [1]

输出:1

解法:

使用Counter记录每个数字出现的次数,返回值为1的键。

代码:

python 复制代码
from collections import Counter


class Solution:
    def singleNumber(self, nums: List[int]) -> int:
        counter = Counter(nums)
        for k, v in counter.items():
            if v == 1:
                return k
相关推荐
Mr_Xuhhh2 小时前
Java泛型进阶:从基础到高级特性完全指南
开发语言·windows·python
汀、人工智能3 小时前
[特殊字符] 第40课:二叉树最大深度
数据结构·算法·数据库架构·图论·bfs·二叉树最大深度
沉鱼.443 小时前
第十二届题目
java·前端·算法
老天文学家了3 小时前
蓝桥杯备战Python
开发语言·python
大熊背3 小时前
ISP Pipeline中Lv实现方式探究之三--lv计算定点实现
数据结构·算法·自动曝光·lv·isppipeline
ID_180079054734 小时前
除了 Python,还有哪些语言可以解析 JSON 数据?
开发语言·python·json
西岸行者4 小时前
BF信号是如何多路合一的
算法
大熊背4 小时前
ISP Pipeline中Lv实现方式探究之一
算法·自动白平衡·自动曝光
FreakStudio5 小时前
小作坊 GitHub 协作闭环:fork-sync-dev-pr-merge 实战指南
python·单片机·嵌入式·面向对象·电子diy
罗西的思考5 小时前
【OpenClaw】通过 Nanobot 源码学习架构---(5)Context
人工智能·算法·机器学习