인프런 커뮤니티 질문&답변

이민우님의 프로필 이미지

작성한 질문수

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

4. 두 리스트 합치기

두리스트 합치기 수업 질문

23.01.15 18:03 작성

·

291

0

n=int(input())
a=list(map(int, input().split()))
m=int(input())
b=list(map(int, input().split()))
res=list(a+b)
res.sort()
print(res)
for i in range(len(res)):
    print(res[i], end=' ')

이런식으로 문제를 풀어도 문제가 없을까요?

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

2023. 01. 15. 19:29

안녕하세요^^

네. 위와 같이 풀어도 상관은 없지만, 제가 이 문제를 만든 이유는 정렬되어 있는 2개의 수열을 2개의 포인터 변수를 써서 정렬된 자료로 병합하는 방법을 설명하기 위해서입니다. 이 과정의 시간복잡도는 O(2n)입니다. sort함수는 시간복잡도가 O(n log n)입니다.

또 영상의 방법이 나중에 재귀함수를 배운 후 병합정렬을 배울때 쓰이니 알아두시면 좋습니다.