力扣: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
相关推荐
俺不要写代码2 分钟前
lambda表达式理解
c++·算法
澈2075 分钟前
动态内存管理:从基础到实战详解
c++·算法
2301_777599379 分钟前
CSS如何制作卡片翻转效果_利用backface-visibility与动画
jvm·数据库·python
想唱rap11 分钟前
C++11之包装器
服务器·开发语言·c++·算法·ubuntu
解救女汉子11 分钟前
Python 中正确声明、重新赋值并安全使用 None 初始化变量的完整指南
jvm·数据库·python
梦想的初衷~11 分钟前
Biome-BGC 模型全攻略:气象数据处理、参数调优、敏感性归因分析全覆盖
python·全球变化·生态系统模拟·碳氮水循环·遥感生态·陆面过程·区域碳汇
a95114164213 分钟前
CSS 悬停箭头闪烁偏移问题的根源与稳定解决方案
jvm·数据库·python
free_7314 分钟前
OpenClaw×AI隐私安全舱——ClawVault:重新定义企业级智能数据防线
人工智能·python·安全
jr-create(•̀⌄•́)15 分钟前
Deep Learning入门---基本概念
人工智能·python·深度学习
Shorasul18 分钟前
安装宝塔面板提示端口被占用_查找并终止占用进程
jvm·数据库·python