当前位置: 首页 > news >正文

【数据结构OJ题】消失的数字

原题链接:https://leetcode.cn/problems/missing-number-lcci/

目录

1. 题目描述

2. 思路分析

3.代码实现


1. 题目描述

2. 思路分析

方法一排序+遍历(下一个数不等于上一个数+1,这个下一个数就是消失的数字)。

时间复杂度:O(N*logN) (这里用比较快的qsort排序)

方法二:0+1+2...+(n-1)+n用等差数列求和公式计算,求和结果依次减去数组中的值,最后的结果就是消失的数字。

时间复杂度:O(N)

方法三单身狗思路,异或

时间复杂度:O(N)

不了解单身狗问题的小伙伴可以看看这篇文章:https://blog.csdn.net/m0_62531913/article/details/132053191?spm=1001.2014.3001.5501

3.代码实现

因为第一种方法的时间复杂度比较高,这里就不写出来了。

方法二:

int missingNumber(int* nums, int numsSize){int n=numsSize;int s=(0+n)*(n+1)/2;for(int i=0;i<n;i++){s-=nums[i];}return s;
}

 方法三:

int missingNumber(int* nums, int numsSize){int n=numsSize;int ret=0;for(int i=0;i<=n;i++){ret^=i;}for(int i=0;i<n;i++){ret^=nums[i];}return ret;
}

http://www.lryc.cn/news/112665.html

相关文章:

  • linux 隔离内核
  • IO学习-有名管道
  • 小研究 - 基于 SpringBoot 微服务架构下前后端分离的 MVVM 模型(三)
  • 应用在多媒体手机中的低功率立体声编解码器
  • Teams Room视频会议室方案
  • C# 委托、事件、特性程序
  • MapTR论文笔记
  • JS进阶-Day4
  • 【C语言】初阶完结练习题
  • c++类与对象详解
  • I/O 函数/缓存和字节流、占位符、getchar(),putchar()
  • MySQL日期常见的函数
  • Python获取CPU温度
  • 后端整理(MySql)
  • HashSet的详细介绍
  • 【SCI征稿】JCR1区,中科院2区,有关大数据、人工智能、机器学习的应用研究均可
  • 【UE】AI导航,多个导航物体无法走到同一终点问题
  • 途游游戏 x 极狐GitLab “通关” DevOps :单元测试从无到优,覆盖率 0→80%
  • 【云原生】Docker-Compose全方面学习
  • 基于 Redux + TypeScript 实现强类型检查和对 Json 的数据清理
  • HIVE语法优化之Join优化
  • 如何申请境内金融信息服务报备
  • VS code:Task
  • 《Java-SE-第三十章》之哲学家就餐问题
  • 关于接口测试用例设计的一些思考
  • gin和gorm框架安装
  • 今天小编继续给大家分享五款高效的电脑宝藏软件
  • SQL Server数据库如何添加mysql链接服务器(Windows系统)
  • scala连接mysql数据库
  • datax-web登陆时出现账号密码错误