php教程三步中最大和最小值之间的最小差异

首页 2024-07-10 14:17:43

1509。三步中最大和最小值之间的最小差异

给你一个整数数组 nums。

一举可以选择nums元素,并将其更改为任意值.

最多执行三步后,返回nums最大值和最小值之间的最小差值.

示例1:

  • 输入: nums = [5,3,2,4]
  • 输出: 0
  • 说明: 我们最多能做到 3 步。
 第一步,将 2 改为 3,nums 变为 [5,3,3,4]。
  第二步,将4改为3。nums变为[5,3,3,3]。
  第三步,将5改为3。nums变为[3,3,3,3]。
  执行 3 第二次移动后,最小值和最大值之间的差异是 3 - 3 = 0。

示例2:

  • 输入: nums = [1,5,0,10,14]
  • 输出: 1
  • 说明: 我们最多能做到 3 步。
 第一步,将 5 改为 0,nums 变为 [1,0,0,10,14]。
  第二步,将 10 更改为 0。nums 变为 [1,0,0,0,0,14]。
  第三步,将14改为1。nums变成[1,0,0,0,1]。
  执行 3 第二次移动后,最小值和最大值之间的差异是 1 - 0 = 1。
  可以证明,三步之内没有办法将差值变为0。

示例3:

  • 输入: nums = [3,100,20]
  • 输出: 0
  • 说明: 我们最多能做到 3 步。
 第一步,将 100 改为 7。 nums 变为 [3,7,20]。
  第二步,将 20 更改为 7。nums 变为 [3,7,7]。
  第三步,将3改为7。nums变为[7,7,7]。
  执行 3 第二次移动后,最小值和最大值之间的差异是 7 - 7 = 0。

限制:

  • 1 5
  • -1099

解决方案:

类解决方案{

    /*** @param 整数[] $nums
     * @return 整数*/
    函数 minDifference($nums) {
        $n = 计数($nums);

        // 如果数组有 4 一个或多个元素,则差异为零,因为我们可以删除一个元素以外的所有元素。
        如果($n 



<p><strong>联系链接</strong></p>

  • 领英
  • GitHub

以上是三个步骤中最大值和最小值之间最小差异的详细内容,更多请关注其它相关文章!


p