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

Rust 力扣 - 238. 除自身以外数组的乘积

文章目录

  • 题目描述
  • 题解思路
  • 题解代码
  • 题解链接

题目描述

在这里插入图片描述

题解思路

这题主要有个关键点,就是元素能取0,然后我们分类讨论元素为0的数量

  • 如果数组中存在至少两个元素为0,则每个元素的除自身以外的乘积为0
  • 如果数组中仅存在一个0,则为0的这个元素对应的除自身以外的乘积为数组中所有非0元素的乘积,其它元素的除自身以外的乘积为0
  • 如果数组中不存在0,则每个元素的除自身以外的乘积为所有元素的乘积除以自身元素

题解代码

impl Solution {pub fn product_except_self(nums: Vec<i32>) -> Vec<i32> {let mut sum = 1;let mut zero_count = 0;for num in &nums {if *num != 0 {sum *= num;} else {zero_count += 1;            }}let mut ans = vec![0; nums.len()];if zero_count > 1 {return ans;}if zero_count == 1 {for i in 0..nums.len() {if nums[i] == 0 {ans[i] = sum;return ans;}}}for i in 0..nums.len() {ans[i] = sum / nums[i];}ans}
}

题解链接

https://leetcode.cn/problems/product-of-array-except-self/

http://www.lryc.cn/news/472587.html

相关文章:

  • 【Vue框架】基础语法练习(1)
  • 开源一款基于 JAVA 的仓库管理系统,支持三方物流和厂内物流,包含 PDA 和 WEB 端的源码
  • 开源一套基于若依的wms仓库管理系统,支持lodop和网页打印入库单、出库单的源码
  • HTML+JavaScript案例分享: 打造经典俄罗斯方块,详解实现全过程
  • 【网页布局技术】项目五 使用CSS设置导航栏
  • 自学网络安全,网络安全入门学习路线,收藏这篇就够了
  • React Query已过时?新一代请求工具横空出世
  • 视频怎么进行格式转换?6款视频转换MP4格式的免费软件!
  • 智能文档处理平台:免费体验智能化医疗信息提取
  • Java 中 InputStream 的使用:try-with-resources 与传统方式的比较
  • 【MATLAB源码-第271期】基于matlab的雷达发射回波模拟,包括匹配滤波,加窗旁瓣控制,以及MTD处理。
  • Linux系统编程——信号量
  • Oracle索引问题汇总
  • 基于QT用工厂模式实现串口通信与网络通信激光器的控制
  • 【代码随想录Day58】图论Part09
  • _或者%关键字模糊匹配查出所有数据
  • 【Python】转换得到图片的rgb565格式数据
  • 隨筆 20241024 Kafka中的ISR列表:分区副本的族谱
  • 【python】爬虫
  • 大语言模型数据类型与环境安装(llama3模型)
  • JS:列表操作
  • ECharts 折线图 / 柱状图 ,通用配置标注示例
  • 统计数据集的TXT、XML及JSON标注文件中各类别/每个标签的数量
  • Facebook登录客户追踪:了解用户访问路径,优化客户体验
  • NUUO摄像头 debugging_center_utils 远程命令执行漏洞复现
  • Nginx 的讲解和案例示范
  • 微信小程序元素水平居中或垂直居中
  • ClickHouse 神助攻:纽约城市公共交通管理(MTA)数据应用挑战赛
  • ELK + Filebeat + Spring Boot:日志分析入门与实践(二)
  • 使用 Docker Compose 将数据版 LobeChat 服务端部署