본문 바로가기

정렬23

[백준] 10989번 : 수 정렬하기 3 – JAVA [자바] https://www.acmicpc.net/problem/10989 10989번: 수 정렬하기 3 첫째 줄에 수의 개수 N(1 ≤ N ≤ 10,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 10,000보다 작거나 같은 자연수이다. www.acmicpc.net 문제 문제 풀이 백준 10989번 수 정렬하기 3은 브론즈 1 난이도의 정렬 문제이다. 이 문제는 되게 간단하다. N개의 수가 주어지고 이 N개의 수를 오름차순으로 정렬을 해서 그대로 출력만 해주기만 하면 된다. 이 문제는 자바에서 기본으로 제공되는 Arrays.sort()를 이용해서 풀 수 있다. Arrays.sort()는 매개 값으로 주어지는 배열을 오름차순으로 정렬하는 역할을 한다. 즉, 주어지는 N개의 수들을.. 2022. 7. 24.
[알고리즘] 삽입 정렬 (Insertion Sort) 목차 삽입 정렬이란? 삽입 정렬이란 배열의 모든 요소를 앞에서부터 차례대로 이미 정렬된 배열 부분과 비교하여, 자신이 들어갈 위치를 찾아 삽입함으로써 정렬을 하는 알고리즘이다. 매 순서마다 해당 원소를 삽입할 수 있는 위치를 찾아 해당 위치에 넣는다. 삽입 정렬의 원리는 두 번째 자료부터 시작해서 그 앞의 정렬되어 있는 자료들과 비교하여 삽입할 위치를 찾은 뒤에 자료를 뒤에 옮기고 지정한 자료를 삽입하여 정렬하는 알고리즘이다. 즉, 2번째 자료는 1번째 자료, 3번째 자료는 2번째와 1번째 자료, 4번째 자료는 3번째, 2번째, 1번째 자료와 비교한 후 자료가 삽입될 위치를 찾는다. 이제 예시를 한번 보겠다. 소스 코드 static void insertionSort() { int j, temp; int .. 2022. 7. 21.
[백준] 11399번 : ATM – JAVA [자바] https://www.acmicpc.net/problem/11399 11399번: ATM 첫째 줄에 사람의 수 N(1 ≤ N ≤ 1,000)이 주어진다. 둘째 줄에는 각 사람이 돈을 인출하는데 걸리는 시간 Pi가 주어진다. (1 ≤ Pi ≤ 1,000) www.acmicpc.net 문제 문제 풀이 백준 11399번 ATM은 실버 4 난이도의 그리디 및 정렬 문제이다. 이 문제에서는 사람의 수 N이 주어지고 각 사람당 돈을 인출하는 데 걸리는 시간 Pi가 주어진다. 이때 모든 사람이 돈을 인출하는 데 걸리는 시간의 합의 최솟값을 출력하면 된다. 이 문제는 의외로 간단하다. 바로 각 사람당 돈을 인출하는 데 걸리는 시간 Pi를 먼저 배열로 입력받는다. 그리고 자바에서 기본으로 제공되는 Arrays.sort(.. 2022. 7. 11.
[백준] 2751번 : 수 정렬하기 2 – JAVA [자바] https://www.acmicpc.net/problem/2751 2751번: 수 정렬하기 2 첫째 줄에 수의 개수 N(1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄부터 N개의 줄에는 수가 주어진다. 이 수는 절댓값이 1,000,000보다 작거나 같은 정수이다. 수는 중복되지 않는다. www.acmicpc.net 문제 문제 풀이 백준 2751번 수 정렬하기 2는 실버 5 난이도의 정렬 문제이다. 이 문제에서는 N개의 정수가 주어지고 이 N개의 정수를 오름차순으로 정렬해서 출력만 해주면 된다. 이 문제는 자바에서 기본으로 제공되는 Arrays.sort(배열)을 이용해서 매우 간단히 풀 수 있다. Arrays.sort(int [] arr)는 배열을 매개변수로 한다. 매개 변수로 배열을 받고 그 배열.. 2022. 7. 10.
반응형