leetcode 908. 最小差值 I(简单题)
发布日期:2021-06-21 09:00:16
浏览次数:3
分类:技术文章
本文共 681 字,大约阅读时间需要 2 分钟。
题目:
给定一个整数数组 A
,对于每个整数 A[i]
,我们可以选择任意 x
满足 -K <= x <= K
,并将 x
加到 A[i]
中。
在此过程之后,我们得到一些数组 B
。
返回 B
的最大值和 B
的最小值之间可能存在的最小差值。
思路:
简单题,最主要的是看数组最大元素和最小元素之差是不是小于2*K。如果小于,那么这些数字肯定可以变成相同的。不同那么最大差值就是max-min-2*K.
代码:
class Solution {public: int smallestRangeI(vector & A, int K) { int sz = A.size(); if(sz==1||sz==0)return 0; int mi = 1e9,ma = -1; for(int i=0;ima)ma = A[i]; if(A[i]
精简代码:
参考自一位大佬,先排序,利用vector的front和back属性获取最开始和最末尾元素。
class Solution {public: int smallestRangeI(vector & A, int K) { sort(A.begin(),A.end()); if(A.back()-A.front()<=2*K)return 0; return A.back()-A.front()-2*K; }};
转载地址:https://blog.csdn.net/lwgkzl/article/details/82851599 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2024年04月09日 12时57分33秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
多条信息垂直滚动,垂直走马灯
2019-04-26
总结输入法挡住输入框方案
2019-04-26
点击其他界面隐藏输入法
2019-04-26
Object.defineProperty()
2019-04-26
js对象原型与in操作符
2019-04-26
NodeJS、NPM安装配置步骤(windows版本)
2019-04-26
select框既可以手输入也可以选择
2019-04-26
JDK安装及环境变量的配置
2019-04-26
js的键盘事件
2019-04-26
js控制复选框选中
2019-04-26
下载淘宝镜像命令
2019-04-26
nodejs代办事项程序
2019-04-26
js判断对象不为空对象
2019-04-26
codeblocks中文编码问题
2019-04-26
算法(1)FFT 傅里叶变化算法 c语言
2019-04-26
cc2541 计算霍尔-频率
2019-04-26
ble原理(2)蓝牙5.0文档概述
2019-04-26
ble原理(3) 广播类型
2019-04-26
c语言库函数
2019-04-26
算法(2) uart 分包-j解包函数 系列代码
2019-04-26