在牛客平台算法题笔试,报错很奇怪,老铁们帮忙看看是什么原因?

Java代码。其中一个用例OOM了,看报错信息是ArrayList的add方法用grow扩容报错。

这是我的代码,我也没有用到add方法啊(代码有点丑,特地不用arraylist,改用数组)

    public int[] getMissingTickets (int[] remainTickets) {
        if(remainTickets.length == 0) {
            return new int[]{};
        }
        // write code here
        Arrays.sort(remainTickets);
        int index = 0;
        int maxNum = remainTickets[remainTickets.length-1];
        int[] result = new int[maxNum];
        if(maxNum <= 1) {
            return new int[]{};
        }

        int j = 0;
        for(int i = 1; i < maxNum; i++) {
            if(i < remainTickets[index+9999]) {
                result[j++] = i;
            } else {
                index++;
            }
        }
        
        int[] r = new int[j];
        for(int i = 0; i < j; i++) {
            r[i] = result[i];
        }

        return r;
    }
全部评论
啊快来个大佬解答一下,我也碰到过
点赞 回复 分享
发布于 2022-12-09 18:14 广西
一个Test Case没过可以换成Python。报错了看哪一行在报错。Compiler是值得信赖的。一般满分改起来不容易。
点赞 回复 分享
发布于 2023-01-03 09:24 四川

相关推荐

01-17 12:35
吉首大学 Java
秋招之BrianGriffin:自己的工作自己做!😡
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务