数对之差的最大值

题目:在数组中,数字减去它右边的数字得到一个数对之差。求所有数对之差的最大值。例如在数组{2, 4, 1, 16, 7, 5, 11, 9}中,数对之差的最大值是11,是16减去5的结果。

static int MaxDiff(int[] arr)

{

if(arr.Length<2||arr==null)

 

{

return 0;

}

int max = arr[0];

int maxDiff = max - arr[1];

for (int i = 2; i < arr.Length; ++i)

{

 

if (arr[i - 1] > max)

{

max = arr[i - 1];

}

int currentDiff = max - arr[i];

if (currentDiff > maxDiff)

{

maxDiff = currentDiff;

}

 

 

}

 

 

 

 return maxDiff;

 

}

 

posted @ 2014-01-08 15:35  purplesun  阅读(221)  评论(0编辑  收藏  举报