Swift 로 작성해 보는 데이터 구조와 알고리즘 문제
공부한 내용을 정리하고 기록하기 위한 저장소 입니다.
- 충분한 시간을 들여 문제를 분석합니다.(30m~1h)
- 테스트 코드를 작성 합니다.
- 분석한 내용을 기반으로 코드를 구현해 봅니다.(30m)
구현이 잘 안된다면 검색을 합니다.
잘 만들어진 코드를 참고 합시다.🧐
- 프로그래머스 Level.1
- 프로그래머스 Level.2
- 프로그래머스 Level.3
- 백준 알고리즘 기초 1/2
- 백준 알고리즘 기초 2/2
- 백준 알고리즘 중급 1/3
자료구조
2023
Date | 복습 | 학습 |
---|---|---|
0222 | 삽입, 선택, 버블 정렬 | - |
0217 | - | Combine |
0216 | merge sort, 최대 공약수 | 음료수 얼려먹기(DFS) |
0215 | - | type eraser wrapper |
0209 | BFS | - |
0208 | 병합정렬 | - |
0207 | 재귀 | 분할정복 알고리즘: 병합정렬(책, 참고사이트 분석) |
0203 | - | Concurrency: async/await |
2022
Date | 복습 | 학습 |
---|---|---|
- | ||
20220119 | - | 이상한 문자 만들기(Programmers), 크레인 인형 뽑기 |
20220112 | 단방향 링크드 리스트 | Reverse(LeetCode), Remove duplicates from sorted list(LeetCode) |
20220111 | - | 단방향 링크드 리스트(Tail 추가, 성능 테스트) |
20220110 | - | 단방향 링크드 리스트 |
20220109 | `재귀`: 피보나치, 배열 합/ 버블 정렬 | `Sort`: 퀵정렬-실패(InPlace) |
20220108 | - | `Sort`: 선택 정렬, 삽입 정렬 |
20220106 | `재귀`: 반복문, 팩토리얼, 피보나치 | `Sort`: 퀵정렬 |
20220105 | - | 분산처리(백준 1009), 저항(백준 1076) |
20220104 | - | 책-`재귀`: 팩토리얼, 피보나치수열(동적 계획법), 분할정복 알고리즘을 이용해 최대값 탐색 |
20220103 | 버블 정렬, 삽입 정렬 | 강의-`DFS`: 여행경로, 가장 큰 수(프로그래머스 정렬) |
20220102 | - | 책-`DFS,BFS`:그래프 표현(인접행렬), DFS 인접 행렬 방문 여부(재귀, 스택), / 문자열 뒤집기(백준 9093), 괄호(백준 9012), 스택 수열(백준 1874), 큐(백준 10845) |
20220101 | 이진탐색, 버블정렬, 삽입정렬 | 스택(백준 10828), 강의-`DFS`: 아파트 단지, 욕심쟁이 조이(백준 1937) |
20211231 | 이진탐색, 버블정렬, 삽입정렬 | 프린터 |
20211230 | Stack, Queue, 이진탐색 | `BFS`: 장기, 상한 귤 |
20211229 | Stack, Queue, 이진탐색 | `Sort`: 삽입, 버블 |
20211229 | Stack, Queue, 이진탐색 | `Sort`: 삽입, 버블 |
20211228 | Stack, Queue | 강의-`Search`: 이진 탐색 |
20211227 | Stack, Queue | 강의-`Dynamic Programming`: 동전, 배낭/ 인접 리스트, DFS, BFS |
20211226 | Stack List | `Greedy`: 큰 수 만들기, 활동 선택, 강의실 배정(백준11000) |
20211225 | Stack(단방향 Linked List로 구현), Queue | 위장 |
20211224 | Stack, Queue(프로토콜을 이용해 개선), 올바른 괄호 | 다리를 지나는 트럭 |
20211223 | Stack, Queue, 하샤드 수 | 완주하지 못한 선수, 주식가격, 기능개발 |
20211222 | - | K번째 수, 문자열 내 마음대로 정렬, 스킬 트리, 올바른 괄호 |
20211221 | - | 하샤드수, 다음 큰 숫자, 모의고사, 소수만들기 |