题目:
**************************
*一个N长度的整数序列,无序排列,写出一种算法来找出相邻两整数间最大差值
*比如一个序列如下
*3 5 4 1 16 9
*结果为 1 3 4 5 9 16 ,最大差值为7
*(注意:不可使用排序算法,时间复杂度0(n))
*
****************************/
其中的一个解法:
}
// 如果a[i]大于最大数值做如下处理
else if((a[i] - h) > min)
{
l = h ;
h = a[i] ;
}
//如果a[i]小于最小数值做如下处理
else if((l -a[i]) > min)
{
h = l;
l = a[i] ;
}
min = h - l;
i++ ;
}
printf("最小值为%d-%d的差值,为%d",h,l,min) ;
getchar() ;
return 0;
}