当前位置: 首页 > news >正文

每日一题,力扣leetcode Hot100之238.除自身以外数组的乘积

乍一看这个题很简单,但是不能用除法,并且在O(N)时间复杂度完成或许有点难度。

考虑到不能用除法,如果我们要计算输出结果位置i的值,我们就要获取这个位置左边的乘积和右边的乘积,那么我新设立两个数组L和R。

对于L来说,由于表达的是位置i左边的数的乘积,那么L[0]=1,因为第一个数字左边没数那么为了不影响乘积初始值就设置为1,那么L[1]=L[0]*nums[0],那么L[i]=L[i-1]*nums[i-1]因为去掉位置i的乘积 就等于上个位置i-1去掉位置的乘积*其本身。

对于R来说,同理,只不过是逆序,注意界定循环的范围。

class Solution:def productExceptSelf(self, nums: List[int]) -> List[int]:length=len(nums)L,R,result=[0]*length,[0]*length,[0]*lengthL[0]=1for i in range(1,length):L[i]=L[i-1]*nums[i-1]R[length-1]=1for i in reversed(range(length-1)):R[i]=R[i+1]*nums[i+1]for i in range(length):result[i]=L[i]*R[i]return result

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 小散想在a股量化交易,怎么解决下单api问题
  • golang panic
  • 828华为云征文|部署RedisStack+可视化操作
  • springboot websocket 服务端
  • 计算机毕业设计Spark+PyTorch知识图谱房源推荐系统 房价预测系统 房源数据分析 房源可视化 房源大数据大屏 大数据毕业设计 机器学习
  • 借助ChatGPT高效撰写优质论文的7大要素
  • 使用SQL语句查询MySQL数据表
  • ArcGIS出图格网小数位数设置
  • 仕考网:事业编考试考什么?
  • git or vscode-电脑电源断或者蓝屏-重启运行项目git报错-git : bad signnature 300000
  • Go语言开发用户登录功能基础设计
  • keepalived和lvs高可用集群
  • 【秋招笔试】9.07米哈游秋招改编题-三语言题解
  • Flutter之命名路由页面传值
  • 连接池-druid
  • 【附node操作实例】redis简明入门系列—字符串类型
  • JavaScript DOM 10 - 滚动
  • Java到底能干嘛?
  • Meteor的表单提交:Form
  • Nginx 通过 Lua + Redis 实现动态封禁 IP
  • Python连接Oracle
  • react 代码优化(一) ——事件处理
  • select2 取值 遍历 设置默认值
  • XForms - 更强大的Form
  • 飞驰在Mesos的涡轮引擎上
  • 面试遇到的一些题
  • 如何合理的规划jvm性能调优
  • 如何将自己的网站分享到QQ空间,微信,微博等等
  • 实习面试笔记
  • 使用API自动生成工具优化前端工作流
  • 使用common-codec进行md5加密
  • 微信小程序填坑清单
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • 栈实现走出迷宫(C++)
  • ​字​节​一​面​
  • # .NET Framework中使用命名管道进行进程间通信
  • #laravel部署安装报错loadFactoriesFrom是undefined method #
  • #我与Java虚拟机的故事#连载01:人在JVM,身不由己
  • $.each()与$(selector).each()
  • $forceUpdate()函数
  • (1)Jupyter Notebook 下载及安装
  • (14)目标检测_SSD训练代码基于pytorch搭建代码
  • (2)(2.10) LTM telemetry
  • (3)医疗图像处理:MRI磁共振成像-快速采集--(杨正汉)
  • (31)对象的克隆
  • (C11) 泛型表达式
  • (二)JAVA使用POI操作excel
  • (附源码)springboot太原学院贫困生申请管理系统 毕业设计 101517
  • (过滤器)Filter和(监听器)listener
  • (转载)利用webkit抓取动态网页和链接
  • (最完美)小米手机6X的Usb调试模式在哪里打开的流程
  • ******IT公司面试题汇总+优秀技术博客汇总
  • *Algs4-1.5.25随机网格的倍率测试-(未读懂题)
  • .bat批处理(九):替换带有等号=的字符串的子串
  • .mkp勒索病毒解密方法|勒索病毒解决|勒索病毒恢复|数据库修复