본문 바로가기
반응형
[코딩테스트] 4주차: 트리와 이진 탐색 트리 트리와 이진 탐색 트리학습 주제트리의 기본 개념과 순회 방법 (전위, 중위, 후위 순회)이진 탐색 트리 (BST)의 삽입, 삭제, 탐색균형 잡힌 트리 (AVL 트리, 레드-블랙 트리)학습 목표트리 자료구조의 기본 개념을 이해하고 구현할 수 있다.이진 탐색 트리의 삽입, 삭제, 탐색 연산을 구현할 수 있다.균형 잡힌 트리의 개념을 이해하고 기본적인 구현을 할 수 있다.학습 자료트리의 기본 개념 설명 및 구현이진 탐색 트리 (BST) 설명 및 구현AVL 트리와 레드-블랙 트리의 기본 개념 설명실습 문제트리 순회 (전위, 중위, 후위 순회)주어진 트리를 전위, 중위, 후위 순회하는 함수를 작성하세요.class Node: def __init__(self, key): self.left = Non.. 2024. 6. 4.
[코딩테스트] 3주차: 그래프 알고리즘 그래프 알고리즘학습 주제:그래프의 표현 방법 (인접 행렬, 인접 리스트)그래프 탐색 알고리즘 (DFS, BFS)최단 경로 알고리즘 (Dijkstra, Floyd-Warshall)학습 목표:그래프의 표현 방법을 이해하고 구현할 수 있다.깊이 우선 탐색(DFS)과 너비 우선 탐색(BFS) 알고리즘을 이해하고 적용할 수 있다.다양한 최단 경로 알고리즘을 이해하고 문제에 적용할 수 있다.학습 자료:그래프의 표현 방법 설명 및 구현깊이 우선 탐색(DFS) 알고리즘 설명 및 구현너비 우선 탐색(BFS) 알고리즘 설명 및 구현Dijkstra 알고리즘 설명 및 구현Floyd-Warshall 알고리즘 설명 및 구현실습 문제:1. 그래프 표현 방법인접 행렬과 인접 리스트를 사용하여 그래프를 구현하세요.# 인접 행렬def .. 2024. 6. 4.
[코딩테스트] 2주차: 동적 프로그래밍 (Dynamic Programming) 동적 프로그래밍 (Dynamic Programming)학습 주제:동적 프로그래밍의 기초 (Memoization, Tabulation)대표적인 DP 문제 풀이 (피보나치 수열, 배낭 문제, 최대 부분합 문제)학습 목표:동적 프로그래밍의 개념과 기초적인 구현 방법을 이해하고 적용할 수 있다.대표적인 동적 프로그래밍 문제를 해결하여 문제 해결 능력을 향상시킬 수 있다.학습 자료:동적 프로그래밍 개요와 원리피보나치 수열 (Top-Down, Bottom-Up) 구현 방법배낭 문제와 최대 부분합 문제 설명 및 구현실습 문제:1. 피보나치 수열 구현 (Top-Down, Bottom-Up)주어진 정수 n에 대해 피보나치 수열의 n번째 값을 구하는 함수를 작성하세요.# Top-Down Approach with Memoi.. 2024. 6. 4.
[코딩테스트] 1주차: 고급 정렬 알고리즘과 탐색 고급 정렬 알고리즘과 탐색학습 주제고급 정렬 알고리즘퀵 정렬 (Quick Sort)병합 정렬 (Merge Sort)탐색 알고리즘이진 탐색 (Binary Search)변형된 이진 탐색학습 목표고급 정렬 알고리즘의 원리와 구현 방법을 이해하고, 시간 복잡도와 공간 복잡도를 분석할 수 있다.이진 탐색을 사용하여 효율적으로 데이터를 탐색할 수 있다.다양한 변형된 이진 탐색 문제를 해결할 수 있다.학습 자료퀵 정렬 설명 및 구현병합 정렬 설명 및 구현이진 탐색 설명 및 구현실습 문제1. 퀵 정렬 구현주어진 리스트를 퀵 정렬 알고리즘을 사용하여 정렬하는 함수를 작성하세요.def quick_sort(arr): if len(arr) pivot] return quick_sort(left) + middle +.. 2024. 6. 4.
[코딩테스트] 코딩테스트를 위한 Python 모듈과 패키지 1. collections주요 기능:deque: 양방향 큐를 지원하는 자료구조로, 스택과 큐의 효율적인 연산을 제공합니다.Counter: 해시 가능한 객체의 개수를 셀 때 유용합니다.defaultdict: 기본 값을 설정할 수 있는 딕셔너리로, 키가 존재하지 않을 때 기본 값을 자동으로 제공합니다.namedtuple: 필드 이름을 가진 튜플로, 튜플의 인덱스 접근을 더 이해하기 쉽게 만들어줍니다.2. heapq주요 기능:힙 큐 알고리즘을 제공하여 우선순위 큐를 구현할 때 사용됩니다.최소 힙과 최대 힙을 통해 가장 작은/큰 요소를 효율적으로 추출할 수 있습니다.3. itertools주요 기능:반복자 생성 함수들을 제공하여 효율적인 반복 작업을 지원합니다.product, permutations, combin.. 2024. 6. 3.
[코딩테스트] 코딩테스트 교육과정(8주) 1주차: 고급 정렬 알고리즘과 탐색학습 주제:고급 정렬 알고리즘 (퀵 정렬, 병합 정렬)이진 탐색과 변형된 이진 탐색실습 문제:퀵 정렬과 병합 정렬 구현 및 성능 비교이진 탐색을 활용한 문제 풀이 (예: 특정 값 찾기, 범위 내 값 찾기)2주차: 동적 프로그래밍 (Dynamic Programming)학습 주제:동적 프로그래밍의 기초 (Memoization, Tabulation)대표적인 DP 문제 풀이 (피보나치 수열, 배낭 문제)실습 문제:피보나치 수열 (Top-Down, Bottom-Up)배낭 문제 (0/1 Knapsack)최대 부분합 문제 (Kadane’s Algorithm)3주차: 그래프 알고리즘학습 주제:그래프의 표현 방법 (인접 행렬, 인접 리스트)그래프 탐색 알고리즘 (DFS, BFS)최단 경.. 2024. 6. 3.
[알고리즘] 2. 코딩테스트를 위한 파이썬 라이브러리 Index 1. 내장 함수 2. itertools 3. heapq 4. bisect 5. collections/math  6. 참고자료1. 내장 함수 내장 함수- 기본 입출력 함수부터 정렬 함수까지 기본적인 함수들을 제공- sum(list), min(list), max(list), eval(문자열 수식), sorted(list, reverse=True, key=lambda x: x[1]) 2. itertoolsitertools- 반복되는 형태의 데이터를 처리하기 위한 기능 제공- 순열과 조합 기능 제공- 순열: 서로 다른 n개에서 서로 다른 r개를 선택하여 일렬로 나열하는 것- 조합: 서로 다른 n개에서 순서에 상관 없이 서로 다른 r개를 선택하는 것# 순열import itertools import pe.. 2023. 10. 5.
[알고리즘] 1. 코딩테스트를 위한 파이썬 문법 및 환경설정 Index 1. 코딩 테스트 2. 환경설정 3. 기본 문법 4. 자료형 && 자료구조 5. 주의할 점  6. 참고자료1.  코딩 테스트코딩 테스트- 기업/기관에서 직원이나 연수생을 선발하기 위한 목적으로 시행 되는 시험- 문제 해결 역량을 평가 복잡도(Complexity)- 시간 복잡도: 특정한 크기의 입력에 대하여 알고리즘의 수행 시간 분석- 공간 복잡도: 특정한 크기의 입력에 대하여 알고리즘의 메모리 사용량 분석- 연산 횟수가 5억이상인 경우 Clang은 1~3초, Python은 5~15초 문제 해결 과정1. 지문 읽기 및 요구사항 분석2. 문제 해결 아이디어 찾기 3. 소스코드 설계 및 코딩  2.  환경설정VSCode- https://code.visualstudio.com/download Pyth.. 2023. 10. 5.
반응형