剑指offer --- 构建乘积数组
来源:互联网 发布:算法复杂度分析 例题 编辑:程序博客网 时间:2024/06/07 17:10
给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。不能使用除法。
解题思路:不使用暴力解法,使用辅助空间的方式进行处理
java
import java.util.ArrayList;public class Solution { public int[] multiply(int[] A) { if (A == null || A.length == 0) { return new int[]{}; } int[] res = new int[A.length]; int[] C = new int[A.length]; int[] D = new int[A.length];C[0] = 1; for (int i = 1; i < A.length; i++) { C[i] = C[i - 1] * A[i - 1]; } D[A.length - 1] = 1; for (int i = A.length - 2; i >= 0; i--) { D[i] = D[i + 1] * A[i + 1]; } for (int i = 0; i < A.length; i++) { res[i] = C[i] * D[i]; } return res; }}
阅读全文
0 0
- 剑指offer--构建乘积数组
- 《剑指offer》构建乘积数组
- 剑指offer-构建乘积数组
- 剑指offer:构建乘积数组
- 剑指offer:构建乘积数组
- 剑指offer:构建乘积数组
- [剑指offer]构建乘积数组
- 剑指offer|构建乘积数组
- 《剑指offer》-构建乘积数组
- 剑指offer 构建乘积数组
- 构建乘积数组--剑指Offer
- 【剑指offer】构建乘积数组
- 《剑指offer》构建乘积数组
- 剑指offer-构建乘积数组
- 剑指offer--构建乘积数组
- 构建乘积数组 剑指offer
- 剑指offer-构建乘积数组
- 剑指offer:构建乘积数组
- Yarn_资源调度器
- 12-14笔记
- Ubuntu 16.04LTS Google chrome 无法打开
- Python 语言发展历史
- JAVA日期加减运算
- 剑指offer --- 构建乘积数组
- Cpplint代码静态检测工具
- 关于wordpress 更新时需要FTP 服务器账户密码 的解决方法
- AngularJS 表格案例(排序,批删,查询,全选)
- 子组件通过$emit来向父组件传递数据(array)
- SparkStreaming操作Kafka
- libmemcached选择server的几种方法
- 2017/12/14
- Spring @component 注解的作用