Rust 力扣 - 1984. 学生分数的最小差值

文章目录

题目描述

题解思路

原数组 nums 排序,遍历nums中下标为0, nums.len() - k的学生分数

假设当前遍历的下标为i则,以 i 下标为最小值的学生分数的最小差值为numsi + k - 1 - numsi

取最小差值的最小值即为本题结果

题解代码

rust 复制代码
impl Solution {
    pub fn minimum_difference(mut nums: Vec<i32>, k: i32) -> i32 {
        nums.sort();

        let mut ans = i32::MAX;

        for i in 0..=nums.len() - k as usize {
            ans = ans.min(nums[i + k as usize - 1] - nums[i]);
        }

        if ans == i32::MAX { 0 } else { ans }
    }
}

题目链接

https://leetcode.cn/problems/minimum-difference-between-highest-and-lowest-of-k-scores/

相关推荐
z落落22 分钟前
C# WinForm Socket 转串口设备服务器+Modbus CRC16校验+Socket 客户端
服务器·开发语言·c#
BingoGo6 小时前
PHP clone 之后,为什么改副本会影响原对象?
后端·php
JaguarJack6 小时前
PHP clone 之后,为什么改副本会影响原对象?
后端·php·服务端
小灰灰搞电子6 小时前
Rust+Slint 实现动态消息提示框源码分享
开发语言·后端·rust
小奏技术6 小时前
10 MB 的 Postman 替代品,启动不到 1 秒
后端
东风破_7 小时前
Text2SQL :用自然语言操作 SQLite 数据库
人工智能·后端
传奇开心果编程8 小时前
【Rust入门知识点学与练】第21课:Trait 进阶 Advanced Traits
开发语言·学习·rust
新时代牛马8 小时前
字符设备驱动完整篇:从 cdev_add、file_operations 到chrdev_open 与排障
开发语言·python
swordbob8 小时前
ReentrantLock 与 AQS 完整学习手册
java·开发语言