缺失的数字
Posted wx5add7776993de
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了缺失的数字相关的知识,希望对你有一定的参考价值。
给定一个包含 0, 1, 2, …, n 中 n 个数的序列,找出 0 … n 中没有出现在序列中的那个数。
示例 1:
输入: [3,0,1]
示例 2:
输入: [9,6,4,2,3,5,7,0,1]
package 数组;
/**
* @Auther: Kevin
* @Date:
* @ClassName:NumberMissing
* @Description: TODO
*/
public class NumberMissing
/**
* <h>
* 给定一个包含 0, 1, 2, ..., n 中 n 个数的序列,找出 0 .. n 中没有出现在序列中的那个数。
* </h>
*
* <li>
* 示例 1:
* 输入: [3,0,1]
* 输出: 2
* </li>
*
* <li>
* 示例 2:
* 输入: [9,6,4,2,3,5,7,0,1]
* 输出: 8
* </li>
*/
/**
* 求缺失数字
* @param nums
* @return
*/
public static int missingNumber(int[] nums)
int n = nums.length+1;
System.out.println("--------> "+n);
return getNTotal(n) - getNumsTotal(nums);
/**
* 求数组和
* @param nums
* @return
*/
public static int getNumsTotal(int[] nums)
int total = 0;
for(int i : nums)
total += i;
System.out.println("数组和 ---》"+total);
return total;
/**
* 前n项和
* @param n
* @return
*/
public static int getNTotal(int n)
int i = ((0+(n-1))*n)/2;
System.out.println("前n项和 ---->"+i);
return i;
public static void main(String[] args)
int[] arr = 3,0,1 ;
System.out.println("--------》"+missingNumber(arr));
思路:
前n项和 - 数组各项和 = 缺失数字
以上是关于缺失的数字的主要内容,如果未能解决你的问题,请参考以下文章