일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 타입 단언
- Recoil
- 암묵적 타입 변환
- useLayoutEffect
- 좋은 PR
- CS
- 회고
- Headless 컴포넌트
- Render Queue
- zustand
- 명시적 타입 변환
- Compound Component
- Microtask Queue
- Sparkplug
- linux 배포판
- 25년 2월
- helm-chart
- JavaScript
- msw
- Custom Hook
- docker
- mocking
- TypeScript
- type assertion
- 프로세스
- jotai
- react
- 클라이언트 상태 관리 라이브러리
- AJIT
- prettier-plugin-tailwindcss
Archives
- Today
- Total
구리
[Algorithm] 백준 2750. 수 정렬하기 (Java) 본문
[문제]
https://www.acmicpc.net/problem/2750
2750번: 수 정렬하기
첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수 주어진다. 이 수는 절댓값이 1,000보다 작거나 같은 정수이다. 수는 중복되지 않는다.
www.acmicpc.net
[제출 답안]
버블 정렬을 이용해 코드를 제출하였다. 케이스 수는 최대 1000개의 수기에 버블정렬도 가능했던 것 같지만 케이스 수가 더 많았다면..
아마 시간 초과가 떴을 수도 있을 듯 하다. 다른 정렬 방법도 같이 참고하는 것이 좋을 듯 하다.
package com.bjy.pracitce;
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner s = new Scanner(System.in);
int n = s.nextInt();
int[] arr = new int[n];
for(int i=0;i<n;i++){
arr[i] = s.nextInt();
}
arr = func(arr);
for(int a : arr){
System.out.println(a);
}
}
public static int[] func(int[] arr){
int[] answer = arr;
int tmp;
for(int i=0;i<answer.length-1;i++){
for(int j=0;j<answer.length-(i+1);j++){
if(arr[j] > arr[j+1]){
tmp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = tmp;
}
}
}
return answer;
}
}
[참고]
버블 정렬 관련 정리한 글
Bubble Sort : 거품 정렬
Bubble Sort : 버블 정렬 소개 정렬과정 구현 소개 Bubble Sort는 인접한 두 수를 비교하여 올바른 순서(오름차순 또는 내림차순)를 뒤로 보내는 간단한 정렬 알고리즘으로 각 회전(Pass)과정이 끝
jy-beak.tistory.com
'혼자 공부,정리하는 알고리즘' 카테고리의 다른 글
[Algorithm] 프로그래머스 - 타겟 넘버 (0) | 2021.10.20 |
---|---|
[Algorithm] 프로그래머스 - 다음 큰 숫자 (Java) (0) | 2021.10.14 |
[Algorithm] 프로그래머스 이상한 문자 만들기 (Java) (0) | 2021.10.12 |
[Algorithm] 최대공약수, 최소공배수 (0) | 2021.10.04 |
[Algorithm] 백준 10989. 수 정렬하기 3 (Java) (0) | 2021.10.02 |