为了账号安全,请及时绑定邮箱和手机立即绑定

现有1~100共一百个自然数,已随机放入一个有98个元素的数组a[98]。

现有1~100共一百个自然数,已随机放入一个有98个元素的数组a[98]。

噜噜哒 2019-04-05 14:15:46
要用JAVA实现要求写出一个尽量简单的方案,找出没有被放入数组的那2个数,并在屏幕上打印这2个数。注意:程序不用实现自然数随机放入数组的过程。
查看完整描述

2 回答

?
ABOUTYOU

TA贡献1812条经验 获得超5个赞

有人给出了一个时间复杂度O(n^2)的算法,我给一个O(n)的算法把:


public void printNum(int[] arr) {

    int[] result = new int[2];

    int[] heap = new int[101];

    for (int i = 0; i < 98; i++) {

        heap[arr[i]] = 1;

    }

    for (int i = 1; i <= 100; i++) {

        if (heap[i] != 1) {

            System.out.println(i);

        }

    }

}


查看完整回答
反对 回复 2019-04-19
?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

public int[] findNum(int[] arr) {

    int[] result = new int[2];

    var count = 0;

    for (int i = 1; i <= 100; i++) {

      if (count == 2) break;

      if (arr.indexOf(i) == -1) {

        result.push(i);

        count++;

      }

    }

    return result;

}


查看完整回答
反对 回复 2019-04-19
  • 2 回答
  • 0 关注
  • 566 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信