#1
#1
T=int(input())
array=[]
for i in range(T):
N=int(input())
array.append(list(map(int,input().split())))
for ex_list in array:
print(min(ex_list), max(ex_list))
위 코드에서는
메모리 낭비가 심했다!
왜 이럴까보니까,
굳이 입력받은 모든 리스트들을 담아둘 필요가 없었기 때문이다
#2
#2
T=int(input())
array=[]
for i in range(T):
N=int(input())
array=list(map(int,input().split()))
print(min(array), max(array))
위 코드처럼,
한 줄의 리스트만 저장하고,
for문 돌면서 계속 내용이 업데이트 되도록 하면
메모리 낭비도 덜하고,
시간도 1번째 코드와 비슷하게 걸리는 걸 확인할 수 있다
#3
#3
T=int(input())
array=[]
for i in range(T):
N=int(input())
array=sorted(map(int,input().split()))
print(array[0],array[-1])
위 코드는 메모리 낭비는 덜한 대신
시간이 오래 걸린다.
sorted의 시간복잡도는 O(NlogN)
Min,Max -> O(N)
따라서 MIN,MAX를 사용하는 게 시간절약에 도움이 된다.
>> 시간 복잡도 확인
wayhome25.github.io/python/2017/06/14/time-complexity/
eboong.tistory.com/281eboong.tistory.com/283
'여니의 취준 준비 > 코딩테스트 (Python)' 카테고리의 다른 글
[Python] n20546 | 기적의 매매법 (0) | 2021.04.27 |
---|---|
[Python] n5597 | 과제 안 내신 분..? (0) | 2021.04.27 |
[Python] n1212번 | 8진수 2진수 (0) | 2021.04.26 |
[Python] n19236번 | 청소년 상어 (0) | 2021.04.24 |
[Python] n19237번 | 어른 상어 (0) | 2021.04.23 |