[LeetCode] 4. Median of Two Sorted Arrays

신동재·2021년 9월 15일
0

코딩테스트 준비

목록 보기
5/8

리트코드 코딩 테스트 준비
https://leetcode.com/problems/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)).

❗ 접근 방법


파이썬의 sort함수는 log시간내에 해결할 수 있다.
따라서 두개의 리스트를 합치고 sort를 통해 정렬을 해준다.
다음 전체 개수가 홀수인가 짝수인가에 따라서 각각 계산 후 return 해주는 식으로 접근하였다.

⭕ 내가 작성한 코드

class Solution:
    def findMedianSortedArrays(self, nums1: List[int], nums2: List[int]) -> float:
        new_list = nums1 + nums2
        new_list.sort()
        if len(new_list) == 1 :
            return new_list[0]
        elif len(new_list) % 2 == 1 :
            return new_list[len(new_list) // 2]
        else :
            return (new_list[len(new_list) // 2] + new_list[len(new_list) // 2 -1]) / 2
            

💯 다른사람이 풀이한 코드

def findMedianSortedArrays(self, nums1: List[int], nums2: List[int]) -> float:
    m = nums1 + nums2
    m.sort()
    l = len(m)
    if l%2:
        return m[l//2]
    else:
        return ((m[l//2-1]+m[l//2])/2)

🧑🏻 후기

파이썬은 sort함수를 통해 log n 시간안에 해결 할 수 있어 쉽게 풀었다.

profile
Software Developer / 1997.12.05

0개의 댓글