class Solution:
def findMedianSortedArrays(self, nums1, nums2):
"""
:type nums1: List[int]
:type nums2: List[int]
:rtype: float
"""
length = len(nums1)+len(nums2)
index1 = length // 2
index2 = index1 - 1
temp = -1
val1 = 0
val2 = 0
val = 0
i = 0
j = 0
while temp < index1:
if i < len(nums1) and j < len(nums2):
if nums1[i] < nums2[j]:
temp += 1
val1 = nums1[i]
i += 1
else:
temp += 1
val1 = nums2[j]
j += 1
elif i < len(nums1) and j == len(nums2):
temp += 1
val1 = nums1[i]
i += 1
elif j < len(nums2) and i == len(nums1):
temp += 1
val1 = nums2[j]
j += 1
if temp == index2 and length%2 == 0:
val2 = val1
if length%2 == 0:
val = (val1 + val2)/2.0
else:
val = val1 * 1.0
def findMedianSortedArrays(self, nums1, nums2):
"""
:type nums1: List[int]
:type nums2: List[int]
:rtype: float
"""
length = len(nums1)+len(nums2)
index1 = length // 2
index2 = index1 - 1
temp = -1
val1 = 0
val2 = 0
val = 0
i = 0
j = 0
while temp < index1:
if i < len(nums1) and j < len(nums2):
if nums1[i] < nums2[j]:
temp += 1
val1 = nums1[i]
i += 1
else:
temp += 1
val1 = nums2[j]
j += 1
elif i < len(nums1) and j == len(nums2):
temp += 1
val1 = nums1[i]
i += 1
elif j < len(nums2) and i == len(nums1):
temp += 1
val1 = nums2[j]
j += 1
if temp == index2 and length%2 == 0:
val2 = val1
if length%2 == 0:
val = (val1 + val2)/2.0
else:
val = val1 * 1.0
return val
执行用时:152 ms
本文介绍了一个Python方法,用于找到两个已排序数组的中位数。该方法通过迭代比较两个数组中的元素,并使用计数器来确定中位数的位置。适用于面试准备和技术实现参考。
286

被折叠的 条评论
为什么被折叠?



