일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- sql
- HackerRank
- 인덱스튜닝
- 백준
- 자료구조
- storage_integration
- 조인
- 코딩
- Oracle
- 개발
- Index
- 율코딩
- 데이터베이스
- DB
- 백트래킹
- MySQL
- 데이터분석
- S3
- 결합인덱스조건
- dbeaber
- snowflake
- 문제풀이
- dfs
- 쿼리
- Join
- 알고리즘
- AWS
- 결합인덱스란
- 인덱스
- 오라클
- Today
- Total
목록자료구조 (2)
율코딩
https://www.acmicpc.net/problem/5397 5397번: 키로거 첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한줄로 이루어져 있고, 강산이가 입력한 순서대로 길이가 L인 문자열이 주어진다. (1 ≤ L ≤ 1,000,000) 강산이가 백스페이스를 입 www.acmicpc.net 이 문제는 스택을 활용하여 푸는 문제이다. 이 문제의 아이디어는 스택을 2개를 만들어서 커서를 스택 2개의 중간지점이라고 생각하면 된다. 데이터를 삽입하면 왼쪽 스택에 데이터를 넣는다. '-'가 나오면 왼쪽 스택에 마지막 원소를 뺀다. ''가 나오면 반대로 오른쪽 스택에서 왼쪽 스택으로 원소를 옮기면 된다. 이 방식으로 코드를 구현하면 아래처럼 구현된다. n=int(input()) for ..
퀵 정렬 분할 정복 (Devide and Conquer) 기법과 재귀 알고리즘을 이용한 정렬 알고리즘 기준값(Pivot)을 중심으로 자료를 왼쪽 부분집합과 오른쪽 부분집합으로 분할한다. 왼쪽 부분집합으로 기준값보다 작은 원소를 이동시키고, 오른쪽 부분집합으로 기준값보다 큰 원소를 이동시킨다. 퀵 정렬은 분할과 정복(Divide and Conquer)라는 작업을 반복하여 수행한다. 특징 기본적으로 지원되는 내장 정렬 함수는 대부분은 퀵 정렬을 기본으로 한다. 성능은 pivot 값을 어떻게 선택하느냐에 따라 크게 달라질 수 있음. 시간 복잡도: 최선의 경우 O(NlogN), 최악의 경우 O(N^2) 활용 케이스 메모리가 부족하고(병합정렬 사용 불가)할 경우 배열이 이미 정렬/역정렬되어있을 가능성이 없고(퀵..