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() 확장 메서드를 호출합니다.