class Solution {
public double findMedianSortedArrays(int[] nums1, int[] nums2) {
int m = nums1.length, n = nums2.length;
int p1 = 0, p2 = 0;
int ending = (m + n - 1) / 2 + 1 ;
int[] a = new int[2];
int t1= 0, t2 = 0;
while (p1 + p2 < ending){
if (p1 < m && p2 < n){
if (nums1[p1] < nums2[p2]){
t1 = nums1[p1];
p1 ++;
}
else{
t1 = nums2[p2];
p2 ++;
}
}
else if (p1 < m){
t1 = nums1[p1];
p1 ++;
}
else{
t1 = nums2[p2];
p2 ++;
}
}
if ((m + n) % 2 == 0){
if (p1 >= m){
t2 = nums2[p2];
}
else if (p2 >= n){
t2 = nums1[p1];
}
else{
t2 = nums1[p1] < nums2[p2] ? nums1[p1]:nums2[p2];
}
return (t1 + t2) / 2.0;
}
else
return t1;
}
}