写点什么

LeetCode 题解:2357. 使数组中所有元素都等于零,排序,详细注释

作者:Lee Chen
  • 2024-10-24
    福建
  • 本文字数:365 字

    阅读完需:约 1 分钟

原题链接:https://leetcode.cn/problems/make-array-zero-by-subtracting-equal-amounts/


解题思路:


  1. 该题要求每次都减去最小的非零元素,因此可以先将数组排序

  2. 之后遍历数组,依次将第i个非零元素之后的元素,都减去nums[i]即可


/** * @param {number[]} nums * @return {number} */var minimumOperations = function (nums) {  nums.sort() // 先将数组排序  let count = 0 // 统计进行减法的次数
// 从第一个数字开始计算 for (let i = 0; i < nums.length; i++) { // 只有不为0的数字才需要计算 if (nums[i]) { // 将i之后的每个数字都减去nums[i] for (let j = i + 1; j < nums.length; j++) { nums[j] -= nums[i] } // 统计计算次数 count++ } }
return count}
复制代码


复杂度分析:时间复杂度:O(n^2)空间复杂度:O(1)

发布于: 刚刚阅读数: 3
用户头像

Lee Chen

关注

还未添加个人签名 2018-08-29 加入

还未添加个人简介

评论

发布
暂无评论
LeetCode题解:2357. 使数组中所有元素都等于零,排序,详细注释_Lee Chen_InfoQ写作社区