首页 > 其他分享 >268.丢失的数字

268.丢失的数字

时间:2023-12-14 12:45:49浏览次数:18  
标签:数字 nums int res 异或 丢失 数组 268

给定一个包含 [0, n] 中 n 个数的数组 nums ,找出 [0, n] 这个范围内没有出现在数组中的那个数。(所有数字不重复)


示例

输入: nums = [3,0,1]
输出:2


思路:

可以排序后遍历查找缺失的数字,也可以用求和公式计算 [0,n] 的和减去nums数组的和,也可以使用哈希集合。还有一种方法就是使用异或,先对数组nums中的每个元素进行异或,然后再对 [0, n] 中的每个数进行异或运算,最后的结果就是缺失的数字。时间复杂度为O(n)。(x⊕x=0、x⊕0=x)

代码:

class Solution {
public:
    int missingNumber(vector<int>& nums) {
        int res = 0;
        for(int i = 0; i < nums.size(); ++i){
            res ^= nums[i];
        }
        for(int i = 0; i <= nums.size(); ++i){
            res ^= i;
        }
        return res;
    }  
};

标签:数字,nums,int,res,异或,丢失,数组,268
From: https://www.cnblogs.com/owmt/p/17900749.html

相关文章

  • MySQL左连接丢失null值的问题
    一、前言我们有的时候直接使用左连接查询,当右表不存在该数据的时候,是可以查出带有null的列。可是当在where条件中有右表相关的筛选条件时,我们惊奇的发现查询的结果不带null值了,换句话说就是查出来的结果比预期的少。二、错误复现以及解决方案1、右表不带筛选条件的查询sql相关......
  • 解决Ubuntu系统在Vmware中重启后丢失网络图标和服务的问题
    问题如上。解决方法:先关掉NetworkManager:sudoserviceNetworkManagerstop用gedit打开NetworkManager.statesudogedit/var/lib/NetworkManager/NetworkManager.state改成如下:重启NetworkManager:sudoserviceNetworkManagerrestart完成注意:不同版本的U......
  • 让艺术触手可及!3DCAT实时云渲染赋能真浪数字艺术馆首展
    2023年5月18日,由真浪数字艺术和EZVR联合打造的真浪数字艺术馆首展–「破界·交织」让艺术更自由,正式与大家相见。此次展览分为五个主题展馆,汇聚了来自全球各领域的19位青年数字艺术家一同探讨虚实共生、人机共生和万物共生的艺术创作。真浪数字艺术馆由杭州虚拟人科技有限公司......
  • `/etc/gitlab/gitlab-secrets.json`文件丢失时Gitlab恢复办法
    当/etc/gitlab/gitlab-secrets.json文件丢失时如果您没有备份secrets文件,则必须完成几个步骤才能使GitLab重新正常工作。secrets文件负责存储包含必需的敏感信息的列的加密密钥。如果密钥丢失,GitLab将无法解密这些列,从而阻止对以下项目的访问:CI/CD变量Kubernetes/GCP集成自......
  • 台达 通讯出现 DriverInf.txt文件丢失 方便别人
    DriverInf.txt文件丢失是因为计算机使用了mindmanager6免安装版本而把登入文件里面的msxmldll路径修改掉造成有使用到msxmlDLL的所有应用程序都会发生问题.下载链接:DownloadKB2758694:MicrosoftXMLCoreServices4.0ServicePack3安全性更新fromOfficialMicrosoft......
  • Python 初学之华为OD机试题:求最大数字
    题目描述给定一个由纯数字组成以宇符串表示的数值,现要求字符串中的每个数字最多只能出现2次,超过的需要进行删除;删除某个重复的数字后,其它数字相对位置保持不变。如"34533”,数字3重复超过2次,需要册除其中一个3,删除第一个3后获得最大数值"4533"。请返回经过删除操作后的最大的数值......
  • 关于数字孪生的摘抄
    1.数字孪生白皮书数据建模的挑战1.数据建模是指数据的结构化、标准化和排序流程,以供特定业务流程使用。2.数据清洗是必要的,并创建可用于在物理对象和数字孪生之间一致地传送数据的永久连接。3.这也意味着需要排列流程以完全获取版本控制数据,以及来自物联网源的大量信息。4.CA......
  • 华为数字化转型实践PPT
    企业数字化升级也好,转型也罢,初听高大上,其实就那么回事,无非回答如下几个问题:为什么—数字化转型是信息时代企业核心战略是什么—数字化转型的四个基本认识干什么—以价值效益为导向的五项重点任务怎么干—以新型能力为主线的五大过程方法如何推—打造持续赋能的协同工作体系企业数......
  • 数字孪生常用技术栈
    通常友友们看到我发的好看的可是化图片,经常问我是怎么实现的,用的什么软件,其实还真不是一项技术和一个软件就能达成的,这次我分享下web端的技术栈和软件,下次分享桌面端的。3D建模软件:数字孪生需要建立一个虚拟的三维环境,因此需要使用3D建模软件来创建模型。常用的3D建模软件有3dsMax......
  • 【专题】中国餐饮业数字化发展报告PDF合集分享(附原数据表)
    原文链接:https://tecdat.cn/?p=34529原文出处:拓端数据部落公众号餐饮业作为实体经济的重要组成部分,对于促进经济增长、刺激消费、增加就业和改善民生具有十分重要的作用。随着全球科技革命和产业变革的加速推进,数字化转型已成为产业发展的必然趋势,其中大数据、物联网、人工智能......