【剑指Offer】构建乘积数组 解题报告(Python)
2024-10-12 11:59:38
【剑指Offer】构建乘积数组 解题报告(Python)
标签(空格分隔): 剑指Offer
题目地址:https://www.nowcoder.com/ta/coding-interviews
题目描述:
给定一个数组A[0,1,…,n-1],请构建一个数组B[0,1,…,n-1],其中B中的元素B[i]=A[0]A1…A[i-1]*A[i+1]…*A[n-1]。不能使用除法。
解题方法
LeetCode原题238. Product of Array Except Self。思路挺简单,用prod来保存之前的所有数字的乘积;回头的时候保存后面的所有数字的乘积。向前和向后的代码其实是一样的,所以题目还算简单。
代码:
# -*- coding:utf-8 -*-
class Solution:
def multiply(self, A):
ans = []
_len = len(A)
prod = 1
for i in range(_len):
ans.append(prod)
prod *= A[i]
prod = 1
for i in range(len(A) - 1, -1, -1):
ans[i] *= prod
prod *= A[i]
return ans
Date
2018 年 3 月 27 日 – 第一次把车开走了,注意离合要慢
最新文章
- Redis 学习笔记(C#)
- 解决Android Graphical Layout 界面效果不显示
- 作为一名前端er,从武汉来到深圳三个月有感
- Ext.js添加子组件
- protobuf框架简介
- C#函数式编程之可选值
- poj[1185]炮兵阵地
- html5游戏-包围盒检测算法
- Range
- 帮朋友急招PHP、Android开发工程师 西安 工资8k-12k
- storm源码之一个class解决nimbus单点问题【转】
- eclipse 利用已有c++代码建工程,并编译执行
- Spring项目跟Axis2结合
- Java Memory Management(1)
- HighCharts基本使用实例(入门)
- Unity 打包总结和资源的优化和处理
- 我的Emacs配置文件
- java 虚拟机学习--未完
- 添加本地jar包到maven仓库
- s21day12 python笔记