알고리즘

[Java] 최댓값 최솟값

limitation01 2025. 11. 16. 06:46

문제

문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요.
예를들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다.

Psuedo Code

numbers -> s를 공백 기준으로 나눈 배열
min -> 정수 중 가장 큰값 
max -> 정수 중 가장 작은 값

for 반복문 numbers
  n -> 정수로 변환한 값 int
  if n이 min보다 작으면
  	min = n
  if n이 max보다 크면
  	max = n
    
 return min 공백 max 합친 문자열
  • min에 가장큰값, max에 가장 작은 값을 담는 이유는 초기화시 어떤 값이 들어와도 바뀔 수 있어야 하기 때문

작성한 코드

public class Solution {
    public String solution(String s) {
        String[] numbers = s.split(" ");
        int min = Integer.MAX_VALUE;
        int max = Integer.MIN_VALUE;

        for (String num : numbers) {
            int n = Integer.parseInt(num);
            if (n < min) min = n;
            if (n > max) max = n;
        }

        return min + " " + max;
    }
}
  • Integer는 자바에서 기본 int 자료형을 객체로 다루기 위해 만들어진 클래스
  • 같이 자주 쓰이는 두가지 속성이 Integer.MAX_VALUE 와 Integer.MIN_VALUE
  • 이 속성들은 Long , Byte 에도 존재

 

'알고리즘' 카테고리의 다른 글

[Java] 대충 만든 자판  (0) 2025.11.09
[Java] 프로그래머스 햄버거 만들기  (0) 2025.11.04
[Java] 프로그래머스 둘만의 암호  (0) 2025.11.02
[Java] 프로그래머스 숫자 짝꿍  (0) 2025.11.01
[Java] 덧칠하기  (0) 2025.10.19