Skip to content

insun-kang/algorithm

Repository files navigation

종류

BOJ
programmers
programmers-SQL
자바 알고리즘 인프런 강의

BOJ

문제 유형 풀이
1065 한수 [브루트포스] PYTHON
1356 유진수 [수학] [문자열] [구현] PYTHON
1431 시리얼 번호 [정렬] PYTHON
1753 최단경로 [그래프] [다익스트라] PYTHON
1916 최소비용 구하기 [그래프] [다익스트라] PYTHON
1932 정수삼각형 [DP] PYTHON
2178 미로탐색 [그래프] [BFS] PYTHON
2193 이친수 [DP] PYTHON
2447 별 찍기 - 10 [분할정복] [재귀] PYTHON
2458 키 순서 [그래프] [플로이드-와샬] PYTHON
2583 영역 구하기 [그래프] [BFS] [DFS] PYTHON
2798 블랙잭 [브루트포스] PYTHON
2839 설탕 배달 [수학] [DP] [그리디] PYTHON
2960 에라토스테네스의 체 [수학] [구현] PYTHON
4963 섬의 개수 [그래프] [BFS] [DFS] PYTHON
5565 영수증 [수학] [구현] PYTHON
7562 나이트의 이동 [그래프] [BFS] PYTHON
10026 적록색약 [그래프] [BFS] [DFS] PYTHON
10773 제로 [구현] [자료구조] [문자열] [스택] PYTHON
10870 피보나치 수 5 [수학] [DP] PYTHON
10872 팩토리얼 [수학] [구현] PYTHON
11497 통나무 건너뛰기 [정렬] [그리디] PYTHON
12904 A와 B [구현] [문자열] [그리디] PYTHON
13565 침투 [그래프] [BFS] [DFS] PYTHON
17144 미세먼지 안녕! [구현] [시뮬레이션] PYTHON
11729 하노이 탑 이동 순서 [재귀] PYTHON
2231 분해합 [브루트포스] PYTHON
7568 덩치 [구현] [브루트포스] PYTHON
1018 체스판 다시 칠하기 [브루트포스] PYTHON
1436 영화감독 숌 [브루트포스] PYTHON
2750 수 정렬하기 [정렬] [구현] PYTHON
2751 수 정렬하기2 [정렬] [구현] PYTHON
10989 수 정렬하기3 [정렬] [구현] PYTHON
2108 통계학 [정렬] [구현] PYTHON
1427 소트인사이드 [문자열] [정렬] PYTHON
11650 좌표 정렬하기 [정렬] PYTHON
1181 단어정렬 [정렬] PYTHON
11651 좌표 정렬하기2 [정렬] PYTHON
10814 나이순 정렬 [정렬] PYTHON
18870 좌표 압축 [정렬] PYTHON
15649 N과 M (1) [백트래킹] PYTHON
15650 N과 M (2) [백트래킹] PYTHON
15651 N과 M (3) [백트래킹] PYTHON
15651 N과 M (4) [백트래킹] PYTHON
2557 Hellow World [구현] JAVA
1000 A+B [구현] [수학] JAVA
1330 두 수 비교하기 [구현] [수학] JAVA
2753 윤년 [구현] [수학] JAVA
2884 알람 시계 [구현] JAVA
9498 시험성적 [구현] JAVA
10718 We love kriii [구현] JAVA
14681 사분면 고르기 [구현] [수학] JAVA
2739 구구단 [구현] [수학] JAVA
10950 A+B - 3 [구현] [수학] JAVA
8393 합 [구현] [수학] JAVA
15552 빠른 A+B [구현] [수학] JAVA
2741 N 찍기 [구현] JAVA
2742 기찍 N [구현] JAVA
11021 A+B - 7 [구현] [수학] JAVA
11022 A+B - 8 [구현] [수학] JAVA
2438 별 찍기 - 1 [구현] JAVA
2439 별 찍기 - 2 [구현] JAVA
10871 X보다 작은 수 [구현] [수학] JAVA
10952 A+B - 5 [구현] [수학] JAVA
10951 A+B - 4 [구현] [수학] JAVA
1110 더하기 사이클 [구현] [수학] JAVA
10818 최소, 최대 [구현] [수학] JAVA
2562 최댓값 [구현] JAVA
2577 숫자의 개수 [구현] [문자열] JAVA
3052 나머지 [수학] JAVA
1546 평균 [수학] JAVA
8958 OX퀴즈 [구현] [문자열] JAVA
4344 평균은 넘겠지 [수학] JAVA
9663 N-Queen [브루트포스] [백트래킹] PYTHON
9184 신나는 함수 실행 [DP] [재귀] PYTHON
1003 피보나치 함수 [DP] PYTHON
1904 01타일 [DP] PYTHON
9461 파도반 수열 [DP] [수학] PYTHON
1149 RGB거리 [DP] PYTHON
2579 계단 오르기 [DP] PYTHON
1463 1로 만들기 [DP] PYTHON
10844 쉬운 계단 수 [DP] PYTHON
1012 유기농 배추 [그래프] [BFS] [DFS] PYTHON
1074 Z [분할정복] [재귀] PYTHON
1107 리모컨 [브루트포스] PYTHON
1260 DFS와 BFS [BFS] [DFS] PYTHON
1389 케빈 베이컨의 6단계 법칙 [BFS] PYTHON
1541 잃어버린 괄호 [문자열] [그리디] PYTHON
1620 나는야 포켓몬 마스터 이다솜 [자료구조] PYTHON
1676 팩토리얼 0의 개수 [수학] PYTHON
1697 숨바꼭질 [BFS] PYTHON
1764 듣보잡 [문자열] [정렬] PYTHON
1780 종이의 개수 [재귀] [분할정복] PYTHON
1931 회의실 배정 [그리디] [정렬] PYTHON
2630 색종이 만들기 [재귀] [분할정복] PYTHON
1244 스위치 켜고 끄기 [구현] [시뮬레이션] PYTHON
2606 바이러스 [DFS] [BFS]] PYTHON
1992 쿼드트리 [분할정복] [재귀]] PYTHON
2667 단지번호붙이기 [BFS] [DFS]] PYTHON
5430 AC [문자열] [구현]] PYTHON
7576 토마토 [BFS] PYTHON
1043 거짓말 [그래프] [자료구조] [분리집합] PYTHON
1167 트리의 지름 [그래프] [BFS] PYTHON
1238 파티 [다익스트라] [그래프] PYTHON
1504 특정한 최단 경로 [다익스트라] [그래프] PYTHON
1629 곱셈 [분할정복] [수학] PYTHON
1865 웜홀 [그래프] [벨만포드] PYTHON
1918 후위 표기식 [스택] [자료구조] PYTHON
1967 트리의 지름 [그래프] [트리] [다익스트라] PYTHON
2096 내려가기 [DP] PYTHON
9935 문자열 폭발 [문자열] [스택] PYTHON
9465 스티커 [DP] PYTHON
17070 파이프 옮기기1 [DP] [그래프] PYTHON

programmers

문제 난이도 풀이
내적 Lv.1 PYTHON, JAVA
음양더하기 Lv.1 JAVA
소수 만들기 Lv.1 JAVA
없는 숫자 더하기 Lv.1 JAVA
크레인 인형뽑기 게임 Lv.1 PYTHON
폰켓몬 Lv.1 PYTHON, JAVA
체육복 Lv.2 PYTHON, JAVA
신규 아이디 추천 Lv.1 PYTHON, JAVA
키패드 누르기 Lv.1 PYTHON
로또의 최고 순위와 최저 순위 Lv.1 PYTHON
K번째수 Lv.1 PYTHON, JAVA
완주하지 못한 선수 Lv.1 PYTHON, JAVA
모의고사 Lv.1 PYTHON, JAVA
숫자 문자열과 영단어 Lv.1 PYTHON, JAVA
짝지어 제거하기 Lv.2 PYTHON
타겟 넘버 Lv.2 PYTHON
문자열 압축 Lv.2 PYTHON
124 나라의 숫자 Lv.2 PYTHON
더 맵게 Lv.2 PYTHON
기능개발 Lv.2 PYTHON
멀쩡한 사각형 Lv.2 PYTHON
오픈채팅방 Lv.2 PYTHON
3진법 뒤집기 Lv.1 PYTHON, JAVA
[1차] 뉴스 클러스터링 Lv.2 PYTHON
프린터 Lv.2 PYTHON
[카카오 인턴] 수식 최대화 Lv.2 PYTHON
예상 대진표 Lv.2 PYTHON
전화번호 목록 Lv.2 PYTHON
튜플 Lv.2 PYTHON
소수 찾기 Lv.2 PYTHON
가장 큰 수 Lv.2 PYTHON
두 개 뽑아서 더하기 Lv.1 PYTHON
큰 수 만들기 Lv.2 PYTHON
위장 Lv.2 PYTHON
다리를 지나는 트럭 Lv.2 PYTHON
카펫 Lv.2 PYTHON
배달 Lv.2 PYTHON
2016년 Lv.1 PYTHON, JAVA
주식가격 Lv.2 PYTHON
삼각 달팽이 Lv.2 PYTHON
구명보트 Lv.2 PYTHON
영어 끝말잇기 Lv.2 PYTHON
[1차] 프렌즈4블록 Lv.2 PYTHON
[1차] 캐시 Lv.2 PYTHON
점프와 순간 이동 Lv.2 PYTHON
가운데 글자 가져오기 Lv.1 PYTHON
쿼드압축 후 개수 세기 Lv.2 PYTHON
[1차] 다트 게임 Lv.1 PYTHON
방문 길이 Lv.2 PYTHON
가장 큰 정사각형 찾기 Lv.2 PYTHON
같은 숫자는 싫어 Lv.1 PYTHON
[3차] 압축 Lv.2 PYTHON
올바른 괄호 Lv.2 PYTHON
나누어 떨어지는 숫자배열 Lv.1 PYTHON
다음 큰 숫자 Lv.2 PYTHON
두 정수 사이의 합 Lv.1 PYTHON
땅따먹기 Lv.2 PYTHON
문자열 내 마음대로 정렬하기 Lv.1 PYTHON
문자열 내 p와 y의 개수 Lv.1 PYTHON
숫자의 표현 Lv.2 PYTHON
최댓값과 최솟값 Lv.2 PYTHON
가장 먼 노드 Lv.3 PYTHON
행렬 테두리 회전하기 Lv.2 PYTHON
게임 맵 최단거리 Lv.2 PYTHON
괄호 회전하기 Lv.2 PYTHON

programmers-SQL

문제 난이도 풀이
최댓값 구하기 Lv.1 MYSQL
이름이 없는 동물의 아이디 Lv.1 MYSQL
모든 레코드 조회하기 Lv.1 MYSQL
역순 정렬하기 Lv.1 MYSQL
이름이 있는 동물의 아이디 Lv.1 MYSQL
아픈 동물 찾기 Lv.1 MYSQL
어린 동물 찾기 Lv.1 MYSQL
동물의 아이디와 이름 Lv.1 MYSQL
여러 기준으로 정렬하기 Lv.1 MYSQL
상위 n개 레코드 Lv.1 MYSQL
고양이와 개는 몇 마리 있을까 Lv.2 MYSQL
루시와 엘라 찾기 Lv.2 MYSQL
동명 동물 수 찾기 Lv.2 MYSQL
이름에 el이 들어가는 동물 찾기 Lv.2 MYSQL
최솟값 구하기 Lv.2 MYSQL
입양 시각 구하기(1) Lv.2 MYSQL
NULL 처리하기 Lv.2 MYSQL
중성화 여부 파악하기 Lv.2 MYSQL
동물 수 구하기 Lv.2 MYSQL
중복 제거하기 Lv.2 MYSQL
DATETIME에서 DATE로 형 변환 Lv.2 MYSQL
없어진 기록 찾기 Lv.3 MYSQL
있었는데요 없었습니다 Lv.3 MYSQL
오랜 기간 보호한 동물(1) Lv.3 MYSQL
오랜 기간 보호한 동물(2) Lv.3 MYSQL
헤비 유저가 소유한 장소 Lv.3 MYSQL

SWEA

문제 난이도 풀이
[1206 View] D3 PYTHON
[1208 Flatten] D3 PYTHON
[4828 min max] D2 PYTHON
[4834 숫자 카드] D2 PYTHON
[4835 구간합] D2 PYTHON
[4831 전기버스] D3 PYTHON

자바 알고리즘 인프런 강의

섹션 1. String(문자열) ✔️

1. 문자 찾기 ✔️
2. 대소문자 변환 ✔️
3. 문장 속 단어(indexOf(), substring()) ✔️
4. 단어 뒤집기(StringBuilder이용법 또는 직접뒤집기) ✔️
5. 특정 문자 뒤집기(toCharArray()) ✔️
6. 중복문자제거 ✔️
7. 회문문자열 ✔️
8. 팰린드롬(replaceAll 정규식이용) ✔️
9. 숫자만 추출 ✔️
10. 문자거리 ✔️
11. 문자열 압축 ✔️
12. 암호(replace(), parseInt(string, 2)) ✔️

섹션 2. Array(1, 2차원 배열)

1. 큰 수 출력하기 ✔️
2. 보이는 학생 ✔️
3. 가위바위보 ✔️
4. 피보나치 수열 ✔️
5. 소수(에라토스테네스 체) ✔️
6. 뒤집은 소수 ✔️
7. 점수계산 ✔️
8. 등수구하기 ✔️
9. 격자판 최대합 ✔️
10. 봉우리 ✔️
11. 임시반장정하기 ✔️
12. 멘토링 ✔️

섹션 3. Two pointers, Sliding window[효율성 : O(n^2)-->O(n)] ✔️

1. 두 배열 합치기(two pointers algorithm) ✔️
2. 공통원소구하기(two pointers algorithm) ✔️
3. 최대 매출(Sliding window) ✔️
4. 연속부분수열(복합적 문제) ✔️
5. 연속된 자연수의 합(two pointers) ✔️
5. 연속된 자연수의 합(수학) ✔️
6. 최대 길이 연속부분수열(복합적 문제) ✔️

섹션 4. HashMap, TreeSet (해쉬, 정렬지원 Set) ✔️

1. 학급 회장(영상 후반 HashMap 추가설명) ✔️
2. 아나그램(HashMap) ✔️
3. 매출액의 종류(Hash, sliding window) ✔️
4. 모든 아나그램 찾기(Hash, sliding window : 시간복잡도 O(n)) ✔️
5. K번째 큰 수(영상 후반 TreeSet 추가설명) ✔️

섹션 5. Stack, Queue(자료구조) ✔️

1. 올바른 괄호 ✔️
2. 괄호문자제거 ✔️
3. 크레인 인형뽑기(카카오) ✔️
4. 후위식 연산(postfix) ✔️
5. 쇠막대기 ✔️
6. 공주구하기 ✔️
7. 교육과정설계 ✔️
8. 응급실 ✔️

섹션 6. Sorting and Searching(정렬, 이분검색과 결정알고리즘) ✔️

1. 선택정렬 ✔️
2. 버블정렬 ✔️
3. 삽입정렬 ✔️
4. LRU(캐시, 카카오 변형) ✔️
5. 중복확인 ✔️
6. 장난꾸러기 ✔️
7. 좌표 정렬(compareTo) ✔️
8. 이분검색 ✔️
9. 뮤직비디오(결정알고리즘) ✔️
10. 마구간 정하기(결정알고리즘) ✔️

섹션 7. Recursive, Tree, Graph(DFS, BFS 기초) ✔️

1. 재귀함수(스택프레임) ✔️
2. 이진수 출력(재귀) ✔️
3. 팩토리얼 ✔️
4. 피보나치 재귀(메모이제이션) ✔️
5. 이진트리순회(DFS : Depth-First Search) ✔️
6. 부분집합 구하기(DFS) ✔️
7. 이진트리 레벨탐색(BFS : Breadth-First Search) ✔️
8. 송아지 찾기1(BFS) ✔️
9. Tree 말단노드까지의 까장 짧은 경로(DFS) ✔️
10. Tree 말단노드까지의 까장 짧은 경로(BFS) ✔️
11. 그래프와 인접행렬 ✔️
12. 경로탐색(DFS) ✔️
13. 경로탐색(인접리스트, ArrayList) ✔️
14. 그래프 최단거리(BFS) ✔️

섹션 8. DFS, BFS 활용 ✔️

1. 합이 같은 부분집합 ✔️
2. 바둑이 승차 ✔️
3. 최대점수 구하기 ✔️
4. 중복순열(채점지원안됨) ✔️
5. 동전교환 ✔️
6. 순열 구하기(채점지원안됨) ✔️
7. 조합수(메모이제이션) ✔️
8. 수열 추측하기 ✔️
9. 조합 구하기(채점지원안됨) ✔️
10. 미로탐색(DFS) ✔️
11. 미로의 최단거리 통로(BFS) ✔️
12. 토마토(BFS) ✔️
13. 섬나라 아일랜드(DFS) ✔️
14. 섬나라 아일랜드(BFS) ✔️
15. 피자배달거리(DFS) ✔️

섹션 9. Greedy Algorithm ✔️

1. 씨름선수 ✔️
2. 회의실 배정 ✔️
3. 결혼식 ✔️
4. 최대수입스케쥴( PriorityQueue) ✔️
5. 다익스트라 알고리즘(채점지원안됨) ✔️
6. 친구인가(Uion&Find) ✔️
7. 원더랜드(크루스칼 : Uion&Find) ✔️
8. 원더랜드(프림 : PriorityQueue) ✔️

섹션 10. dynamic programming(동적계획법) ✔️

1. 계단오르기 ✔️
2. 돌다리 건너기 ✔️
3. 최대부분증가수열(LIS) ✔️
4. 가장 높은 탑 쌓기(LIS 응용) ✔️
5. 동전교환(냅색 알고리즘)
6. 최대점수 구하기(냅색알고리즘)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published