leetcode-136:只出现一次的数字

简介: leetcode-136:只出现一次的数字

题目

题目链接

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

说明:

你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?

示例 1:

输入: [2,2,1]
输出: 1

示例 2:

输入: [4,1,2,1,2]
输出: 4

解题:

方法一:位运算

class Solution:
    def singleNumber(self, nums: List[int]) -> int:
        return reduce(lambda x, y: x ^ y, nums)

关于reduce函数的链接

输入nums = [4,1,2,1,2],可得到结果4,巧妙的利用了位与运算。

方法二:(利用集合) 虽然复杂度有点高,不符合题意,但是容易想到

class Solution:
    def singleNumber(self, nums: List[int]) -> int:
        num1 = sum(list(set(nums)))*2
        num2 = sum(nums)
        return num1-num2

没有时间复杂度限制的其他方法可以自己尝试一下。

相关文章
|
网络协议 安全 Linux
linux配置防火墙 Centos7下 添加 端口白名单
linux配置防火墙 Centos7下 添加 端口白名单
1844 0
|
存储 运维 容灾
带你读《云上自动化运维宝典》——一文详解云上跨可用区容灾解决方案和异地多活能力建设最佳案例(3)
带你读《云上自动化运维宝典》——一文详解云上跨可用区容灾解决方案和异地多活能力建设最佳案例(3)
357 0
|
11月前
|
弹性计算
新手必看,阿里云国际购买服务器带宽如何选择
新手必看,阿里云国际购买服务器带宽如何选择
|
11月前
|
机器学习/深度学习 人工智能 开发框架
解锁AI新纪元:LangChain保姆级RAG实战,助你抢占大模型发展趋势红利,共赴智能未来之旅!
【10月更文挑战第4天】本文详细介绍检索增强生成(RAG)技术的发展趋势及其在大型语言模型(LLM)中的应用优势,如知识丰富性、上下文理解和可解释性。通过LangChain框架进行实战演练,演示从知识库加载、文档分割、向量化到构建检索器的全过程,并提供示例代码。掌握RAG技术有助于企业在问答系统、文本生成等领域把握大模型的红利期,应对检索效率和模型融合等挑战。
558 14
|
8月前
|
人工智能 编译器 Python
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
181 0
python已经安装有其他用途如何用hbuilerx配置环境-附带实例demo-python开发入门之hbuilderx编译器如何配置python环境—hbuilderx配置python环境优雅草央千澈
|
Linux
Linux 目录 rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d 是干什么的
【5月更文挑战第17天】Linux 目录 rc0.d rc1.d rc2.d rc3.d rc4.d rc5.d rc6.d 是干什么的
579 1
|
机器学习/深度学习 人工智能 自然语言处理
深度学习中的自适应神经网络
【6月更文挑战第24天】在深度学习的浪潮中,自适应神经网络以其独特的灵活性和高效性引起了研究者的广泛关注。本文将深入探讨自适应神经网络的设计原理、优化算法以及在不同领域的应用案例,揭示其在处理复杂数据模式时的优势与挑战。
halcon联合c#、WPF学习笔记三(dispatcherTimer实时相机显示)
halcon联合c#、WPF学习笔记三(dispatcherTimer实时相机显示)
572 1
halcon联合c#、WPF学习笔记三(dispatcherTimer实时相机显示)
|
存储 负载均衡 网络性能优化
谈一谈文件系统的多租户实践
为了保证多租户场景下,单个用户可以获得与独占资源时相同的体验,云服务需要综合利用负载均衡、请求优先级调度、实例隔离等多项技术,让用户流量恰当地分布在整个集群中。
5723 3
|
弹性计算 编解码 负载均衡
阿里云飞天洛神2.0:开放弹性的云网络NFV平台
作为飞天系统的核心组件,洛神平台支撑了超大规模租户、超大规模虚拟机的高性能云网络。其中洛神2.0 NFV平台的定位是构建通用、灵活的平台能力,降低业务网元NFV化的门槛和成本,实现了复杂业务网元超高的灵活性和弹性。
5101 0
阿里云飞天洛神2.0:开放弹性的云网络NFV平台