求一维空间s中最接近的点对的距离
代码如下:
public class Cpair1_d {
/**
* 求一维空间s中最接近的点对的距离
* @param s 一维空间的点的集合,可以表示为落在横坐标上的点的集合
* @param n 一维空间上点的个数
* @return 一维空间上最接近的点对的距离
*/
public static int cpair(int s[],int n){
if(n<2)return Integer.MAX_VALUE;
int m=(min(s,0,n-1)+max(s,0,n-1))/2;//m是s各点坐标中位数,s分解为s1和s2,使得s1={x|x<=m} s2={x|x>m}
int[] s1=new int[n];//存放s中小于等于m的各点,s1={x|x<=m}
int[] s2=new