알고리즘 풀이 방법입니다.
문제(Problem) -> 생각(Think) -> 해결책(Solution) -> 리뷰(Review) 를 통해서 정리해서 작성합니다.
Problem📄

https://level.goorm.io/exam/43243/bubble-sort/quiz/1

 

구름LEVEL

코딩테스트에서 가장 높은 비중을 차지하는 알고리즘 문제를 제작하고 풀이할 수 있는 온라인 저지 서비스입니다. 기업에서 선호하는 C, C++, 파이썬(Python), 자바(Java), 자바스크립트(Javascript) 이

level.goorm.io


Think🤔

알고리즘을 풀면서 버블 정렬은 필수라고 생각한다!

 

일단 첫번째 input에서 몇 개의 자연수를 받을지 값을 정한다.

그리고 두번째 라인에서 input값 만큼 자연수를 입력한다.

그리고 Bubble Sort를 이용해서 정렬 해서 출력한다.

 

두번째 라인에서는 띄어쓰기로 값을 받는다.


Solution✍
import java.io.*;
class Main {
	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String input = br.readLine();
		String inputNum = br.readLine();
        
		String[] str = inputNum.split(" ");
		
		int[] arr = new int[str.length];
		
		for(int i=0; i<arr.length; i++){
			arr[i] = Integer.parseInt(str[i]);
		}
		
		int tmp = 0;
		for(int i=0; i<arr.length; i++){
			for(int j=i+1; j<arr.length; j++){
				if(arr[i] > arr[j]){
					tmp = arr[i];
					arr[i] = arr[j];
					arr[j] = tmp;
				}
			}
		}
		
		for(int i=0; i<arr.length; i++){
			System.out.print(arr[i]+" ");
		}
	}
}
import java.io.*;
class Main {
	
	public static void swap(int[] a, int i , int j){
		int temp = a[i];
		a[i] = a[j];
		a[j] = temp;
	}
	
	public static void main(String[] args) throws Exception {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		String input = br.readLine();
		String inputNum = br.readLine();
        
		String[] str = inputNum.split(" ");
		
		int[] arr = new int[str.length];
		
		for(int i=0; i<arr.length; i++){
			arr[i] = Integer.parseInt(str[i]);
		}
		
		for(int i=0; i<arr.length; i++){
			for(int j=i+1; j<arr.length; j++){
				if(arr[i] > arr[j]){
					swap(arr, i, j);
				}
			}
		}
		for(int i=0; i<arr.length; i++){
			System.out.print(arr[i]+" ");
		}
	}
}

swap 메서드를 만들어서 활용

 


Review🤩

버블 정렬의 장점

1. 추가적인 메모리 소비가 적음

2. 구현이 쉽다.

 

단점

다를 정렬 알고리즘에 비해 과정이 많아 시간을 소비함


 

'Algorithm' 카테고리의 다른 글

[구름] 소수 판별  (0) 2021.12.25
[구름] Substring  (0) 2021.12.25
[구름] 369 게임  (0) 2021.12.25
[구름] 시험성적 평균과 등급 구하기  (0) 2021.12.25
[구름] 약수 구하기  (0) 2021.12.25

+ Recent posts