消失的数字:

Q:数组nums包含从0n的所有整数,但其中缺了一个。请编写代码找出那个缺失的整数。你有办法在O(n)时间内完成吗

示例 1:

复制代码
输入:[3,0,1]
输出:2

示例 2:

复制代码
输入:[9,6,4,2,3,5,7,0,1]
输出:8

找到缺失的那个整数,需要我们用 期望的总和 - 当前数组实际总和

实际数组的总和我们可以创建一个变量Actualsum,直接利用for循环将数组与Actualsum相加即可。

如何计算期望的总和呢? 我们不妨利用数组长度来解决,

以例1来看,,我们想要期望的总和不是1+2+3吗?而当前数组长度为3,直接利用等差数列和公式

n*(n+1)/2 得到期望总和。(总有一个零占了少的数字的位置,所以可以利用这一点来求)

最后返回两和之差即可.

复制代码
class Solution {
    public int missingNumber(int[] nums) {
       
      int n = nums.length;
      int Excepedsum = n*(n+1)/2;
      int actualsum =0;
      for(int num:nums)  //增强for循环
      {
        actualsum+= num;
      }
            return Excepedsum-actualsum;

    }
}
相关推荐
XFF不秃头7 分钟前
力扣刷题笔记-合并区间
c++·笔记·算法·leetcode
p&f°13 分钟前
Java面试题(全)自用
java·开发语言
爬山算法17 分钟前
Hibernate(9)什么是Hibernate的Transaction?
java·后端·hibernate
Craaaayon18 分钟前
深入浅出 Spring Event:原理剖析与实战指南
java·spring boot·后端·spring
麷飞花27 分钟前
Intellij Idea 操作汇总
java·intellij-idea·idea
码农水水30 分钟前
蚂蚁Java面试被问:接口幂等性的保证方案
java·开发语言·面试
毕设源码-钟学长33 分钟前
【开题答辩全过程】以 高校课程档案管理系统的设计与实现为例,包含答辩的问题和答案
java·开发语言
巧克力味的桃子36 分钟前
学习笔记:查找数组第K小的数(去重排名)
笔记·学习·算法
ps酷教程37 分钟前
ChunkedWriteHandler源码浅析
java·netty·分块传输
星云POLOAPI40 分钟前
大模型API调用延迟过高?深度解析影响首Token时间的五大因素及优化方案
人工智能·python·算法·ai