Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬으로 리스트에서 가장 큰 숫자 찾는 방법

이 글에서는 주어진 문제 상황에 대한 해결 방법을 자세히 알아보겠습니다.

문제 정의 − 하나의 리스트가 주어졌을 때, 그 리스트에서 가장 큰 요소를 찾아 출력해야 합니다.

여기서는 파이썬의 내장 함수를 활용하여 문제를 간단하고 효율적으로 해결하는 방법을 살펴보겠습니다.

1. sort() 함수 사용하기

리스트를 오름차순으로 정렬하면 가장 큰 값은 항상 마지막 인덱스에 위치하게 됩니다. 이를 활용하는 방법입니다.

예제

# 리스트 생성
list1 = [23, 1, 32, 67, 2, 34, 12]
# 정렬 수행
list1.sort()
# 마지막 요소(최댓값) 출력
print("Largest element is:", list1[-1])

실행 결과

Largest element is: 67

정렬은 평균적으로 O(n log n)의 시간 복잡도를 가지므로, 단순히 최댓값만 필요한 경우에는 다음 방법이 더 효율적일 수 있습니다.

2. max() 함수 사용하기

파이썬의 내장 함수인 max()를 사용하면 한 줄의 코드로 리스트의 최댓값을 바로 얻을 수 있습니다. 시간 복잡도는 O(n)으로 정렬 방식보다 빠릅니다.

예제

# 리스트 생성
list1 = [23, 1, 32, 67, 2, 34, 12]
# 최댓값 출력
print("Largest element is:", max(list1))

실행 결과

Largest element is: 67

사용자로부터 입력받아 처리하기

리스트를 코드에 직접 작성하지 않고, 사용자로부터 직접 값을 입력받아 최댓값을 구할 수도 있습니다.

# 빈 리스트 생성
list1 = []
# 리스트에 넣을 요소의 개수 입력받기
num = int(input("Enter number of elements in list: "))
# 요소를 하나씩 입력받아 리스트에 추가
for i in range(1, num + 1):
    ele = int(input("Enter elements: "))
    list1.append(ele)
# 최댓값 출력
print("Largest element is:", max(list1))

결론

이번 글에서는 파이썬에서 리스트의 최댓값을 구하는 두 가지 대표적인 방법, 즉 sort() 함수를 이용한 정렬 방식과 max() 함수를 이용한 직접 탐색 방식을 배웠습니다. 단순히 최댓값만 필요하다면 O(n) 시간 복잡도를 가지는 max() 함수를 사용하는 것이 더 효율적이며, 필요에 따라 사용자 입력을 받아 동적으로 처리하는 것도 가능합니다.