[알고리즘 기초] 최대값/최솟값

서대철·2023년 7월 25일
0

리스트에서 최대 숫자를 찾는 알고리즘은 간단합니다. 리스트를 반복하면서 현재까지 찾은 최대 숫자를 추적하는 방식으로 동작합니다. 다음은 Python으로 설명된 알고리즘입니다:

  1. 변수 maxNum을 리스트의 첫 번째 요소로 초기화합니다.
  2. 두 번째 요소부터 마지막 요소까지 리스트를 반복합니다.
  3. 각 요소를 현재 maxNum과 비교합니다.
  4. 만약 요소가 maxNum보다 크다면, maxNum을 해당 요소의 값으로 업데이트합니다.
  5. 리스트를 전체적으로 반복한 후에 maxNum에는 최대 숫자가 저장되어 있습니다.

이제 Python으로 이 알고리즘을 구현해보겠습니다:

def find_max_number(nums):
    if not nums:
        raise ValueError("The input list is empty.")
    
    maxNum = nums[0]  # Initialize maxNum with the first element of the list
    
    for num in nums[1:]:
        if num > maxNum:
            maxNum = num

    return maxNum

# Example usage:
numbers = [5, 3, 9, 12, 7, 2, 10, 8]
max_number = find_max_number(numbers)
print("Maximum number:", max_number)

같은 원리로 코드를 살짝만 수정하여 최솟값을 구할 수 있습니다.

def find_min_number(nums):
    if not nums:
        raise ValueError("The input list is empty.")
    
    minNum = nums[0]  # Initialize minNum with the first element of the list
    
    for num in nums[1:]:
        if num < minNum:
            minNum = num

    return minNum

# Example usage:
numbers = [5, 3, 9, 12, 7, 2, 10, 8]
min_number = find_min_number(numbers)
print("Minimum number:", min_number)

0개의 댓글