【Leetcode 2357 】 使数组中所有元素都等于零 —— 哈希表

给你一个非负整数数组 nums 。在一步操作中,你必须:

  • 选出一个正整数 xx 需要小于或等于 nums最小非零 元素。
  • nums 中的每个正整数都减去 x

返回使 nums 中所有元素都等于0 需要的 最少 操作数。

示例 1:

复制代码
输入:nums = [1,5,0,3,5]
输出:3
解释:
第一步操作:选出 x = 1 ,之后 nums = [0,4,0,2,4] 。
第二步操作:选出 x = 2 ,之后 nums = [0,2,0,0,2] 。
第三步操作:选出 x = 2 ,之后 nums = [0,0,0,0,0] 。

示例 2:

复制代码
输入:nums = [0]
输出:0
解释:nums 中的每个元素都已经是 0 ,所以不需要执行任何操作。

提示:

  • 1 <= nums.length <= 100
  • 0 <= nums[i] <= 100

哈希表

TypeScript 复制代码
function minimumOperations(nums: number[]): number {
  const numSet = new Set(nums);
  return numSet.has(0) ? numSet.size - 1 : numSet.size;
}
相关推荐
yangmu3203几秒前
深度解析:短视频是如何通过“算法+神经机制”劫持用户时间的?
算法
LuminousCPP6 分钟前
栈和队列专题(四):LeetCode 232. 用栈实现队列|双栈分工 + 按需迁移 + 摊还 O(1)
c语言·数据结构·笔记·算法·leetcode
sir.山20 分钟前
在 Vue 3 项目中使用 Mock 数据
前端·vue.js·vue3·vite
tudousisi22228 分钟前
01背包8.21
数据结构·算法
李剑一30 分钟前
华为新上Pura X View阔直板手机,特殊屏幕比例设备下,前端应该怎么去适配更完美?送你一套完整工具代码
前端
01_ice40 分钟前
html个人简历展示
前端·html
ZJU_统一阿萨姆44 分钟前
【算子开发】Reduction算子完全指南
人工智能·算法·语言模型
程序员爱钓鱼1 小时前
Rust where详解:让泛型与Trait约束更加清晰
前端·后端·rust
青 春 记 忆1 小时前
LeetCode 155. 最小栈|Python 解法详解
开发语言·python·leetcode
zzzzzz3102 小时前
react-bits 为什么会吸引前端开发者:别把动效当装饰,先把它当成页面能力
前端·react.js·动效