선택 정렬(Selection Sort) 설명 오름 차순 기준 가장 작은 수의 인덱스를 찾아 현재 위치 인덱스의 값과 Swap한다. 한 사이클당 교환이 1회 이루어지므로 버블 정렬 보단 효율적이다. 동작 동작 예시 정수형 배열이 [5, 3, 2, 4, 1] 5개의 원소를 가질 때 오름차순 정렬 선형 탐색으로 가장 작은 값의 인덱스를 찾음 (인덱스 0 이상에서) 결과: 4 배열의 0번지의 값과 Swap [1, 3, 2, 4, 5] 선형 탐색으로 가장 작은 값의 인덱스를 찾음 (인덱스 1 이상에서) 결과: 2 배열의 1번지의 값과 Swap [1, 2, 3, 4, 5] 선형 탐색으로 가장 작은 값의 인덱스를 찾음 (인덱스 2 이상에서) 결과: 2 배열의 2번지의 값과 Swap [1, 2, 3, 4, 5] // ..
삽입 정렬(Insertion Sort) 설명 오름차순의 경우 K번째 원소를 이전 원소와 비교하며 이전 원소가 K번째 원소보다 작을 때 까지 이전 원소를 다음 인덱스의 값으로 이동시킨다. 그 후 그 자리에 K번째 원소를 끼워 넣는다. 동작 동작 예시 정수형 배열이 [5, 3, 2, 4, 1] 5개의 원소를 가질 때 오름차순 정렬 인덱스는 1부터 시작 (이전 원소와 비교해야 하는데 0은 이전 원소가 없다.) 3과 5 비교, 밀어내기 O [5, 5, 2, 4, 1] 3을 0번지에 끼워 넣음 [3, 5, 2, 4, 1] 2와 5 비교, 밀어내기 O [3, 5, 5, 4, 1] 2와 3 비교, 밀어내기 O [3, 3, 5, 4, 1] 2를 0번지에 끼워 넣음 [2, 3, 5, 4, 1] 이를 반복 시간 복잡도 O..
백준 온라인 저지 2108번 통계학 문제 문제 설명 수를 처리하는 것은 통계학에서 상당히 중요한 일이다. 통계학에서 N개의 수를 대표하는 기본 통계값에는 다음과 같은 것들이 있다. 단, N은 홀수라고 가정하자. 산술평균 : N개의 수들의 합을 N으로 나눈 값 중앙값 : N개의 수들을 증가하는 순서로 나열했을 경우 그 중앙에 위치하는 값 최빈값 : N개의 수들 중 가장 많이 나타나는 값 범위 : N개의 수들 중 최대값과 최소값의 차이 N개의 수가 주어졌을 때, 네 가지 기본 통계값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절대값은 4,000을 넘지 않는다. 출력 첫째 줄에는 산술평균을..
백준 1181번 단어 정렬 문제 내용 문제 알파벳 소문자로 이루어진 N개의 단어가 들어오면 아래와 같은 조건에 따라 정렬하는 프로그램을 작성하시오. 길이가 짧은 것부터 길이가 같으면 사전 순으로 입력 첫째 줄에 단어의 개수 N이 주어진다. (1≤N≤20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. 출력 조건에 따라 정렬하여 단어들을 출력한다. 단, 같은 단어가 여러 번 입력된 경우에는 한 번씩만 출력한다. 해결 방법 Java8에 추가된 stream을 활용하면 간단하게 해결할 수 있다. 소스코드(38640 KB916 MS) 타인의 소스코드 (syntaxtree님, 39796 KB132 MS) 읽히는건 내 소..
백준 온라인 저지 1427번 소트 인사이드 문제 문제 내용 배열을 정렬하는 것은 쉽다. 수가 주어지면, 그 수의 각 자리수를 내림차순으로 정렬해보자. 입력 첫째 줄에 정렬하고자하는 수 N이 주어진다. N은 1,000,000,000보다 작거나 같은 자연수이다. 출력 첫째 줄에 자리수를 내림차순으로 정렬한 수를 출력한다. 해결방법 문자열을 입력받아 .split("")로 각 글자별로 쪼갬 Arrays.sort(T[] a, Comparator
괄호가 있는 사칙연산 스택 계산기 문제 스택 계산기의 원리를 이용해 수식을 분해하고 계산하기 (괄호가 있는 사칙연산) 1. 식 분할 입출력 예시 입력 출력 ( 3 * 1 ) 3 1 * 7 / ( 4 * 6 ) 7 4 6 * / 1 + 2 ( 3 - 4 5 ) 1 2 3 4 5 - + 9 / 8 * ( 7 + 6 ) / 5 9 8 / 7 6 + * 5 / 설명 : 스택 자료구조를 이용해 식을 계산한다. 수식을 읽어들이고 수가 입력되면 그대로 출력, 연산자가 입력되면 스택에 push. 연산자가 스택에 저장된 상태에서 연산자가 입력된다면 둘의 우선순위를 비교해 결정한다. 새로 입력된 연산자가 괄호 열기 "("인 경우 pop 없이 push 새로 입력된 연산자가 괄호 닫기 ")"인 경우 괄호 열기 "("가 pop..
사칙연산 스택 계산기 문제 스택 계산기의 원리를 이용해 수식을 분해하고 계산하기 (사칙연산) 1. 식 분할 입출력 예시 입력 출력 3 * 1 3 1 * 7 / 4 * 6 7 4 / 6 * 1 + 2 3 - 4 5 1 2 3 + 4 5 - 9 / 8 * 7 + 6 / 5 9 8 / 7 * 6 5 / + 설명 : 스택 자료구조를 이용해 식을 계산한다. 수식을 읽어들이고 수가 입력되면 그대로 출력, 연산자가 입력되면 스택에 push. 연산자가 스택에 저장된 상태에서 연산자가 입력된다면 둘의 우선순위를 비교해 결정한다. 새로 입력된 연산자 우선순위 > 스택 속 연산자의 우선순위 pop 없이 push 그 외의 경우 스택 속 연산자를 pop 이를 반복 소스코드 StackCalculatorWithPriority.ja..
덧뺄셈 스택 계산기 문제 스택 계산기의 원리를 이용해 수식을 분해하고 계산하기 1. 식 분할 입출력 예시 입력 출력 3 + 1 3 1 + 7 + 4 - 6 7 4 + 6 - 1 + 2 - 3 - 4 + 5 1 2 + 3 - 4 - 5 + 9 + 8 - 7 + 6 - 5 9 8 + 7 - 6 + 5 - 설명 : 스택 자료구조를 이용해 식을 계산한다. 수식을 읽어들이고 수가 입력되면 그대로 출력, 연산자가 입력되면 스택에 push. 연산자가 스택에 저장된 상태에서 연산자가 입력된다면 스택을 pop해 연산자를 꺼내어 출력하고, 새로 입력된 연산자를 push 소스코드 2. 계산 입출력 예시 입력 출력 3 + 1 4 7 + 4 - 6 5 1 + 2 - 3 - 4 + 5 1 9 + 8 - 7 + 6 - 5 11 설..
- Total
- Today
- Yesterday
- 자료구조 Heap
- 우테캠
- 자료구조 힙
- @Embdded
- 소프트웨어개발과
- 백준
- 스택 계산기
- JPA 관계
- Java Heap
- 클래스와 객체
- 붕어빵틀과붕어빵
- Entity에 VO
- Sign Me
- 붕어빵틀과 붕어빵
- 스택
- 단방향 연결
- 백준 온라인 저지
- Java 스택 계산기
- bi direction
- 전공프로젝트
- 정렬
- @Embeddable
- 정렬 알고리즘
- signme
- 자료구조
- 자바 힙 구현
- 양방향 연결
- 알고리즘
- 우아한테크캠프
- uni direction
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |