您的位置:首页 > 其它

【校招真题】2016 美团 最大差值

2017-06-24 17:10 239 查看

【校招真题】2016 美团 最大差值

题目

题目描述:

有一个长为n的数组A,求满足0≤a≤b<n的的A-A[a]的最大值。

给定数组A及它的大小n,请返回最大差值。

[b]测试样例:


[10,5],2

返回:0

考查点

贪心

思路

计算 A[i] 与前 i 项中最小值的差,

也即是当前元素跟它之前元素中的最小值之差可能是结果,

扫描数组中的每一个元素,即可以计算出最终的结果。

程序

import java.util.*;

public class LongestDistance {
public int getDis(int[] A, int n) {
// write code here
int dis = 0;  // 最大差值大于等于0
int min = A[0];  // 前 a 的最小值
// 计算 A[i] 与前 i 项中最小值的差
for (int i = 1; i < n; i ++){
if (A[i] - min > dis) dis = A[i] - min;
if (min > A[i]) min = A[i];
}
return dis;
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: