# Median of Two Sorted Arrays🚚

Given two sorted arrays `nums1`

and `nums2`

of size `m`

and `n`

respectively, return **the median** of the two sorted arrays.

The overall run time complexity should be `O(log (m+n))`

.

**Example 1:**

**Input:** nums1 = [1,3], nums2 = [2]

**Output:** 2.00000

**Explanation:** merged array = [1,2,3] and median is 2.

**Example 2:**

**Input:** nums1 = [1,2], nums2 = [3,4]

**Output:** 2.50000

**Explanation:** merged array = [1,2,3,4] and median is (2 + 3) / 2 = 2.5.

**Constraints:**

`nums1.length == m`

`nums2.length == n`

`0 <= m <= 1000`

`0 <= n <= 1000`

`1 <= m + n <= 2000`

`-106 <= nums1[i], nums2[i] <= 106`

# Java Solution

Two different solutions with two different time complexities

**O(n+n2)** where n is the size of array1 and n2 size of array2

In the worst case, the below code will go through all the elements in both the arrays separately so O(n + n2).

## Code

**O(log min(n,n2))**

If array1 has the less numbers of elements, so the below code will apply binary search method on that array, so O(log x) where x is the size of the array which have less number of elements.