public double findMedianSortedArrays(int[] nums1, int[] nums2) {
//num1,num2的游标
int num1Index=0,num2Index=0;
int num1Length=nums1.length,num2Length=nums2.length;
int totalLength= nums1.length+nums2.length;
int avgIndex= (int) Math.ceil(new Double(totalLength)/2);
//如果总长度是偶数则取第avgIndex和第avgIndex+1个数的平均数,如果是奇数则取第avgIndex个数的数
int left=0,right=0;
for (int i = 0,end=((totalLength&1)==1)?avgIndex:avgIndex+1; i <end ; i++) {
left=right;
if (num1Index==num1Length){
right=nums2[num2Index++];
}else if (num2Index==num2Length){
right=nums1[num1Index++];
}else {
right=nums1[num1Index]<nums2[num2Index]?nums1[num1Index++]:nums2[num2Index++];
}
}
if ((totalLength&1)==1){
return new Double(right);
}else {
return new Double(right+left)/2;
}
}