블로그를 생성한 오늘, 알고리즘 스터디는 8주차가 진행 중이다. 방식은 계속해서 조금씩 변해왔지만, 현재의 스터디 방식은 다음과 같다.
매주 각자 한 개씩의 topic을 설정해 이와 관련된 자료조사 및 문제풀이를 진행한다.
스터디 모임 날짜에 각자가 설정한 topic에 대해 다른 스터디멤버에게 발표하고, 해당 topic에 대한 예제풀이를 진행한다.
발표자는 본인의 topic에 대한 과제문제를 3문제 선별해 공지하고, 다른 멤버들은 과제문제를 다음주차 모임 날짜 이전에 풀이해 git의 팀 레포지토리에 제출한다. 이에 대한 검사는 해당 topic의 발표자가 다음 주차 모임 때 진행한다.
- 앞으로 공부할 알고리즘 구현을 위한 프로그래밍 언어 선정 (node.js)
- 온라인 저지 웸페이지의 표준입/출력 형태에 대하여 공부
- MAIN TOPIC: 완전 탐색(브루트포스 알고리즘, Bruteforce algorithm)
- 과제
- MAIN TOPIC: 재귀(recursion)
- 과제
- MAIN TOPIC: 정렬(sort)
- 과제
- 4주차에 C++로, 5주차에 python으로 언어 변경.
다른 언어로 변경된 당시에 같은 난이도의 문제를 이어서 풀기에는 무리가 있어 보여서 백준OJ의 class2를 모두 풀어오는 것을 과제로 함.
- MAIN TOPIC
- 너비 우선 탐색(Breadth First Search, BFS)
- 다이나믹 프로그래밍(Dynamic Programming, DP)
- 과제
- 너비 우선 탐색(Breadth First Search, BFS)
- 다이나믹 프로그래밍(Dynamic Programming, DP)
- MAIN TOPIC
- 분할 정복(Divide and Conquer)
- 깊이 우선 탐색과 백트래킹(Depth First Search, DFS),(Backtracking)
- 투 포인터(Two Pointer)
- 과제
- 분할 정복(Divide and Conquer)
- 깊이 우선 탐색과 백트래킹(Depth First Search, DFS),(Backtracking)
- 투 포인터(Two Pointer)