题解 | #数组中重复的数字#

构建乘积数组

http://www.nowcoder.com/practice/94a4d381a68b47b7a8bed86f2975db46

初学者也能看得懂的题解:
    len=A.size();
     //char B[len];
    vector<int> B; //一开始创建的是char数组,运行时提示返回值不一致,所以创建vector类型
    int mul=1;
        for(int i=0; i<len; i++) //B数组的下标i
        {
            for(int j=0; j<len; j++) //对A数组除i下标以外的元素遍历并乘积
            {
                if(i != j)
                {
                    mul*=A[j];
                }
            }
            B.push_back(mul); //vector容器的尾插法
            mul=1;
        }
     return B;
本题重点需要的知识点:vector容器的学习(创建数据,并进行尾插法操作)。解题逻辑并不难,创建一个数组B,对于B[i]的元素,只需要遍历A数组中除第i个元素以外的元素(题中if(i != j))并相乘(题中mul*=A[j])即可。

全部评论

相关推荐

寿命齿轮:实习就一段还拉了,项目一看就不是手搓,学历也拉了,技术栈看着倒是挺好,就是不知道面试表现能咋样。 不过现在才大三,争取搞两端大厂实习,或者一个纯个人项目+一段大厂,感觉秋招还是未来可期。
投递美团等公司10个岗位
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
昨天 10:52
点赞 评论 收藏
分享
2 收藏 评论
分享
牛客网
牛客企业服务