#
# # 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可 # # find median in two sorted array # @param arr1 int整型一维数组 the array1 # @param arr2 int整型一维数组 the array2 # @return int整型 # class Solution: def findMedianinTwoSortedAray(self , arr1: List[int], arr2: List[int]) -> int: # write code here n = len(arr1) - 1 m = len(arr2) - 1 if n == -1: return arr1[m//2] if m == -1: return arr2[n//2] if n == 0 and m == 0: return min(arr1[0], arr2[0]) half = (n+m + 2) // 2 mid1 = n // 2 mid2 = half - (mid1+1) -1 if arr1[mid1] == arr2[mid2]: return arr1[mid1] elif arr1[mid1] < arr2[mid2]: return self.findMedianinTwoSortedAray(arr1[mid1+1:], arr2[:mid2+1]) else: return self.findMedianinTwoSortedAray(arr1[:mid1+1], arr2[mid2+1:])