回答

收藏

Java程序在数组中查找缺失的数字

技术问答 技术问答 175 人阅读 | 0 人回复 | 2023-09-12

给你一个包含 1 到  n 整数组,但从 1 到 n 丢失了一个数字。您需要提供最好的解决方案来找到丢失的数字。数组中的数字不能重复。# s+ e. z6 H: b" E1 o  q$ n/ r; c
例如:
# c! m# {9 P  H# }! h8 F4 lint[] arr1={7,5,6,1,4,2};Missing numner : 3int[] arr2={5,3,1,2};Missing numner :4                 
  P8 _6 y, W/ P' E    解决方案:                                                               
$ T+ L* R% T- o" \: {  g5 C1 ~; Z                                                                使用公式 n=n*(n 1)/2 求 n 数字总和
+ r1 G2 y6 l* p0 V% r找到给定数组中存在的元素的总和。' N2 C% @: W7 |2 ]! n7 R' [
减法(n 个数总和 - 数组中存在的元素总和)。9 F5 [: n, C6 H! ^8 t4 F* K
找出数组中缺失的数字Java程序:+ A! V+ B( K- P
package org.arpit.java2blog;public class MissingNumberMain    public static void main(String[] args)        int[] arr1={7,5,6,1,4,2};    System.out.println("Missing number from array arr1: " missingNumber(arr);;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;int[] arr2={5,3,1,2}System.out.println("Missing number from array arr2: " missingNumber(arr2);               public static int missingNumber(int[] arr)           int n=arr.length 1;        int sum=n*(n   int restSum=0;           for (int i = 0; i 当您操作上述程序时,您将获得以下输出:$ [6 s- _1 c& t. `( I4 e
Missing number from array arr1: 3Missing number from array arr2:4
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则