
더보기 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j = 5, k = 3이라면 array의 2번째부터 5번째까지 자르면 [5, 2, 6, 3]입니다. 1에서 나온 배열을 정렬하면 [2, 3, 5, 6]입니다. 2에서 나온 배열의 3번째 숫자는 5입니다. 배열 array, [i, j, k]를 원소로 가진 2차원 배열 commands가 매개변수로 주어질 때, commands의 모든 원소에 대해 앞서 설명한 연산을 적용했을 때 나온 결과를 배열에 담아 return 하도록 solution 함수를 작성해주세요. 제한사항 array의 길이는 1 이상 100 이하입니다. arr..
https://www.acmicpc.net/problem/9012 문제 보기 ▼ 더보기 문제 괄호 문자열(Parenthesis String, PS)은 두 개의 괄호 기호인 ‘(’ 와 ‘)’ 만으로 구성되어 있는 문자열이다. 그 중에서 괄호의 모양이 바르게 구성된 문자열을 올바른 괄호 문자열(Valid PS, VPS)이라고 부른다. 한 쌍의 괄호 기호로 된 “( )” 문자열은 기본 VPS 이라고 부른다. 만일 x 가 VPS 라면 이것을 하나의 괄호에 넣은 새로운 문자열 “(x)”도 VPS 가 된다. 그리고 두 VPS x 와 y를 접합(concatenation)시킨 새로운 문자열 xy도 VPS 가 된다. 예를 들어 “(())()”와 “((()))” 는 VPS 이지만 “(()(”, “(())()))” , 그리..
Stack은 후입선출:LIFO 방식으로, 먼저 들어간 데이터가 먼저 나오게 되는 구조를 가진다. Stack과 비교되는 자료구조에는 Que가 있다. Que는 이 다음에 다루도록 하겠다. 스택을 구현하는 방법에는 순차 자료구조 방식과, 연결 자료구조 방식이 있다. 순차 자료구조 방식은 배열을 사용하여 구현이 쉽지만, 물리적으로 크기가 고정된 배열을 사용하기 때문에 스택의 크기를 변경하기가 어렵고, 메모리 낭비가 생길 수 있다는 단점을 가진다. 연결 자료구조 방식은 스택에 원소를 삽입할 때 마다 연결 리스트에 노드를 하나씩 연결한다. * Stack 클래스의 주요 메소드 boolean empty() 스택이 비어있는지 여부를 리턴 E peek() 가장 위에 있는 값을 리턴 (제거하지 않음) E pop() 가장 위..
병합 정렬은 대표적인 '분할 정복' 방법을 채택한 알고리즘이다. 병합 정렬은 하나의 큰 문제를 두 개의 작은 문제로 분할한 뒤에 각자 계산하고 나중에 합치는 방법을 이용한다. 정확히 반으로 나누고 나중에 정렬하는 것이다. 시간 복잡도 병합 정렬은 정확히 반절씩 나눈다는 점에서 최악의 경우에도 O(N*logN)을 보장한다. 병합 정렬의 시간복잡도는 O(N*logN) 이다. 병합 정렬은 모든 수가 들어있는 배열이 정확히 크기가 1일 때까지 반으로 계속 쪼개는 것을 반복하다가, 모든 배열이 1이 되는 순간부터 정렬과 합치는 작업에 들어간다. 즉, 나누면서가 아닌 합치면서 정렬이 수행되게 된다. 합치는 방법은 근접한 배열끼리 값을 비교해 정렬을 한 뒤에, 합친 배열들을 가지고 또 근접한 배열끼리 정렬 후 병합을..
- Total
- Today
- Yesterday
- 리눅스마스터2급실기
- 자료구조
- Mac cpu모델명
- 난이도B
- 2장요구사항확인
- 정렬
- mac크롬
- mac세팅
- 2021정처기
- 정처기실기
- 2021정처기실기1회대비
- //축
- 스택
- 권오흠
- 정처기
- 프로그래머스
- K번째수
- 리눅스마스터2급2차
- 백준
- Mac cpu
- 맥 크롬설치
- 2020정처기실기1회
- 인프런
- 정보처리기사실기
- Java
- 정보처리기사
- 맥세팅
- 맥 크롬 다운로드
- 난이도C
- 알고리즘
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |