본문 바로가기
코딩테스트

[코딩테스트] 코딩테스트 교육과정(8주)

by cogito21_python 2024. 6. 3.
반응형

1주차: 고급 정렬 알고리즘과 탐색

  • 학습 주제:
    • 고급 정렬 알고리즘 (퀵 정렬, 병합 정렬)
    • 이진 탐색과 변형된 이진 탐색
  • 실습 문제:
    • 퀵 정렬과 병합 정렬 구현 및 성능 비교
    • 이진 탐색을 활용한 문제 풀이 (예: 특정 값 찾기, 범위 내 값 찾기)

2주차: 동적 프로그래밍 (Dynamic Programming)

  • 학습 주제:
    • 동적 프로그래밍의 기초 (Memoization, Tabulation)
    • 대표적인 DP 문제 풀이 (피보나치 수열, 배낭 문제)
  • 실습 문제:
    • 피보나치 수열 (Top-Down, Bottom-Up)
    • 배낭 문제 (0/1 Knapsack)
    • 최대 부분합 문제 (Kadane’s Algorithm)

3주차: 그래프 알고리즘

  • 학습 주제:
    • 그래프의 표현 방법 (인접 행렬, 인접 리스트)
    • 그래프 탐색 알고리즘 (DFS, BFS)
    • 최단 경로 알고리즘 (Dijkstra, Floyd-Warshall)
  • 실습 문제:
    • DFS와 BFS를 사용한 미로 찾기 문제
    • Dijkstra 알고리즘을 활용한 최단 경로 문제
    • Floyd-Warshall 알고리즘을 사용한 모든 쌍 최단 경로 문제

4주차: 트리와 이진 탐색 트리

  • 학습 주제:
    • 트리의 기본 개념과 순회 방법 (전위, 중위, 후위 순회)
    • 이진 탐색 트리 (BST)의 삽입, 삭제, 탐색
    • 균형 잡힌 트리 (AVL 트리, 레드-블랙 트리)
  • 실습 문제:
    • 트리 순회를 통한 특정 값 찾기
    • BST의 삽입, 삭제 연산 구현
    • AVL 트리와 레드-블랙 트리의 기본 구현

5주차: 백트래킹과 분할 정복

  • 학습 주제:
    • 백트래킹의 개념과 활용 (N-Queen 문제, 퍼즐 문제)
    • 분할 정복 알고리즘 (Merge Sort, Quick Sort 재방문, Fast Exponentiation)
  • 실습 문제:
    • N-Queen 문제 해결
    • 퍼즐 문제 (예: Sudoku 해결)
    • 분할 정복을 사용한 큰 수의 거듭제곱 계산

6주차: 탐욕 알고리즘과 최적화

  • 학습 주제:
    • 탐욕 알고리즘의 개념과 적용 방법
    • 탐욕 알고리즘을 사용한 문제 풀이 (활동 선택 문제, 최소 신장 트리 - Kruskal, Prim)
  • 실습 문제:
    • 활동 선택 문제
    • 최소 신장 트리 구현 (Kruskal, Prim)
    • 탐욕적 접근을 활용한 기타 최적화 문제

7주차: 고급 자료구조

  • 학습 주제:
    • 세그먼트 트리
    • 펜윅 트리 (Fenwick Tree)
    • 우선순위 큐와 힙
  • 실습 문제:
    • 세그먼트 트리를 사용한 범위 쿼리 문제
    • 펜윅 트리를 사용한 빠른 업데이트와 쿼리 문제
    • 힙을 이용한 우선순위 큐 문제

8주차: 실전 모의 코딩 테스트

  • 학습 주제:
    • 실제 코딩 테스트와 유사한 환경에서 연습
    • 시간 관리와 문제 해결 전략 수립
  • 실습 문제:
    • 온라인 저지 플랫폼 (예: LeetCode, HackerRank, Codeforces)에서 제공하는 실전 문제 풀기
    • 제한 시간 내에 여러 문제를 해결해보며 실전 감각 익히기
반응형