31.6 최솟값 구하기: MIN 알고리즘

    최솟값(MIN) 알고리즘은 주어진 범위 내에서 가장 작은 값을 구합니다. 즉, 관련 데이터 중에서 가장 작은 값을 구하는 데 사용합니다.

     

    최솟값 알고리즘 사용하기

    최솟값 알고리즘을 적용하여 주어진 범위의 데이터 중 가장 작은 값을 구하는 예제를 만들어 봅시다. 다음 내용을 입력한 후 실행해 보세요.

    주어진 데이터 중에서 가장 작은 짝수 값: MinAlgorithm.cs

    using System;
    using System.Linq;
    using static System.Console;
    
    class MinAlgorithm
    {
        static void Main()
        {
            //① 초기화
            var min = Int32.MaxValue; //정수 형식의 데이터 중 가장 큰 값으로 초기화
    
            //② 입력: 이진수로 표현 + 숫자 구분자 사용({ 2, 5, 3, 7, 1 })
            int[] numbers = { 0b0010, 0B_0101, 0b0011, 0B_0111, 0b0000_0001 };
    
            //③ 처리: MIN
            for (int i = 0; i < numbers.Length; i++)
            {
                if (numbers[i] < min && numbers[i] % 2 == 0)
                {
                    min = numbers[i]; //MIN: 더 작은 값으로 할당
                }
            }
    
            //④ 출력
            WriteLine($"짝수 최솟값(식) : {numbers.Where(n => n % 2 == 0).Min()}");
            WriteLine($"짝수 최솟값(문) : {min}");
        }
    }

    실행 결과

    짝수 최솟값(식) : 2
    짝수 최솟값(문) : 2

    최솟값 알고리즘은 처럼 최솟값이 담길 변수 값을 정수 형식이 가질 수 있는 가장 큰 값(Int32.MaxValue)으로 초기화한 후 사용해야 한다는 점에 주의합니다.

    LINQ를 사용하여 최솟값을 구할 때는 Min() 확장 메서드를 호출합니다.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.