class Solution {
public double findMedianSortedArrays(int[] nums1, int[] nums2) {
int n1Len = nums1.length;
int n2Len = nums2.length;
int i = 0, j = 0;
List<Integer> list = new ArrayList<Integer>();
while(i < n1Len && j < n2Len)
{
if(nums1[i] < nums2[j])
{
list.add(nums1[i]);
i++;
}
else
{
list.add(nums2[j]);
j++;
}
}
if(i < n1Len)
{
for(int ii = i; ii < n1Len; ii++)
{
list.add(nums1[ii]);
}
}
if(j < n2Len)
{
for(int jj = j; jj < n2Len; jj++)
{
list.add(nums2[jj]);
}
}
if(list.size() == 1)
{
return list.get(0);
}
if(list.size() == 2)
{
return (list.get(0) + list.get(1))/2.0;
}
if(list.size() % 2 == 0)
{
return (list.get(list.size() / 2 - 1) + list.get(list.size() / 2)) / 2.0;
}
return list.get(list.size()/2);
}
}