首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >超出自学习代码时间限制的数组乘积

超出自学习代码时间限制的数组乘积
EN

Stack Overflow用户
提问于 2021-01-06 17:12:01
回答 1查看 120关注 0票数 0

我一直在解决leetcode上的问题(数组的乘积,除了Self)。我的代码编译成功,通过了19个测试用例中的18个。我试图找出失败的测试用例,但没有成功。

异常:超过时间限制

输入:https://leetcode.com/submissions/detail/439297112/testcase/ - (70000个整数)

我的代码

代码语言:javascript
复制
public int[] productExceptSelf(int[] nums) {
       int arr[] = { 1, 2, 3, 4 };
       return mySolution(arr);
   }
   
   public static int[] mySolution(int arr[]) {
       int size = arr.length;
       int j;
       int product;
       int[] result = new int[size];
       for (int i = 0; i < size; i++) {
           j = 0;
           product = 1;
           while (j < size) {
               if (j == i) {
                   j++;
                   continue;
               }
               product *= arr[j];
               j++;
           }

           result [i] = product;
       }

       return result;
   }
EN

回答 1

Stack Overflow用户

发布于 2021-01-06 17:56:22

我认为这个逻辑应该会减少你的时间。我还没检查过。

代码语言:javascript
复制
product = 1;
for (int i = 0; i < size; i++) {
    product *= arr[j];
}
for (int i = 0; i < size; i++) {
    result[i] = product/arr[i]
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65593026

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档