JAVA/Programmers
프로그래머스 Lv2 > JAVA/자바 > 최댓값과 최솟값
Huiyeon
2023. 7. 21. 20:41
https://school.programmers.co.kr/learn/courses/30/lessons/12939
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
문제
문자열 s에는 공백으로 구분된 숫자들이 저장되어 있습니다. str에 나타나는 숫자 중 최소값과 최대값을 찾아 이를 "(최소값) (최대값)"형태의 문자열을 반환하는 함수, solution을 완성하세요.
예를들어 s가 "1 2 3 4"라면 "1 4"를 리턴하고, "-1 -2 -3 -4"라면 "-4 -1"을 리턴하면 됩니다.
제한사항
- s에는 둘 이상의 정수가 공백으로 구분되어 있습니다.
입출력 예
내 코드🐰
class Solution {
public String solution(String s) {
//문자열 띄어쓰기로 잘라서 arr에 넣어주기
String []arr = s.split(" ");
int n = arr.length;
//min값과 max값을 구해주기 위해 int문 array생성
int []numArr = new int[n];
//버블정렬
for (int i = 0; i < arr.length; i++) {
numArr[i] = Integer.parseInt(arr[i]);
}
for(int i=0; i<n-1; i++) {
for(int j=0; j<n-i-1; j++) {
//가까운 값과 비교해 앞에 있는 값이 더 클 경우 자리 교체
if(numArr[j]>numArr[j+1]) {
int temp = numArr[j];
numArr[j] = numArr[j+1];
numArr[j+1] = temp;
}
}
}
//numArr의 0번째는 min값 numArr의 마지막값은 max값임으로 각각 출력
String answer = numArr[0]+" "+numArr[arr.length-1];
return answer;
}
}
- 버블정렬을 사용해서 정렬 후 String answer에 numArr의 0번째 값과 마지막 값을 넣어주며 return해줬습니다.
//return numArr[0]+" "+numArr[arr.length-1]; 으로 제출해도 가능합니다.
▼제 블로그에 작성해놓은 버블 정렬을 참고 하시면서 코드 작성해보시면 좋을 것 같아요👻▼
https://huiyeon.tistory.com/36
[자료구조] 버블 정렬(Bubble Sort)이란 with JAVA
💧버블 정렬(Bubble Sort)이란? 버블정렬은 인접한 두 값을 비교하며 순서대로 정렬하는 간단한 알고리즘 입니다. 이 과정을 반복하며 배열을 정렬합니다. 버블 정렬 알고리즘 예제 버블 정렬 알고
huiyeon.tistory.com
반응형