본문 바로가기

반응형

PS/Python

(9)
Python [AtoZ] Chapter 09. 최단경로 [ Table of Contents ]더보기가장 빠른 길 찾기1. 가장 빠르게 도달하는 방법2. 다익스트라 최단 경로 알고리즘3. 플로이드 워셜 알고리즘 실전 문제1. 미래도시2. 전보 기출 문제1. 플로이드2. 정확한 순위3. 화성 탐사4. 숨바꼭질[ Abstract ]더보기1.2.3.4.5. 가장 빠른 길 찾기1. 가장 빠르게 도달하는 방법최단 경로Shortest Path 알고리즘은 말 그대로 가장 짧은 경로를 찾는 알고리즘이다. 그래서 '길 찾기' 문제라고도 불린다. 최단 경로 알고리즘 유형에는 다양한 종류가 있는데, 상황에 맞는 효율적인 알고리즘이 이미 정립되어 있다.예를 들어 '한 지점에서 다른 특정 지점까지의 최단 경로를 구해야 하는 경우', '모든 지점에서 다른 모든 지점까지의 최단 경로를 ..
Python [AtoZ] Chapter 08. 다이나믹 프로그래밍 [ Table of Contents ]더보기다이나믹 프로그래밍1. 피보나치 수열2. 탑다운(=메모이제이션)3. 보텀업(=DP의 전형적인 형태) 실전 문제1. 1로 만들기2. 개미 전사3. 바닥 공사4. 효율적인 화폐 구성 기출 문제1. 금광2. 정수 삼각형3. 퇴사4. 병사 배치하기5. 못생긴 수6. 편집 거리[ Abstract ]더보기0. 계산 복잡도 : P-NP문제1. DP란? 퀵정렬과는 다르며, 재귀 함수 말고 반복문으로 구현할 것2. 탑다운(=메모이제이션) : 연속적이지 않은 경우 사전dict 자료형 사용 가능3. 보텀업(=DP의 전형적인 형태) : DP테이블 사용4. 피보나치 수열의 시간복잡도 : 재귀(O(2ᴺ)), DP(O(N)) 다이나믹 프로그래밍중복되는 연산을 줄이자우리는 연산 속도와 메모..
Python [AtoZ] Chapter 07. 이진탐색 [ Table of Contents ]더보기범위를 반씩 좁혀가는 탐색1. 순차 탐색2. 이진 탐색 : 반으로 쪼개면서 탐색하기3. 트리 자료구조4. 이진 탐색 트리 실전 문제1. 부품 찾기2. 떡볶이 떡 만들기 기출 문제1. 정렬된 배열에서 특정 수의 개수 구하기2. 고정점 찾기3. 공유기 설치4. 가사 검색[ Abstract ]더보기1.2.3.4.5.  범위를 반씩 좁혀가는 탐색 1. 순차 탐색이번 장에서는 리스트 내에서 데이터를 매우 빠르게 탐색하는 이진 탐색 알고리즘에 대해서 공부하겠다. 그전에 가장 기본 탐색 방법인 순차 탐색에 대해 먼저 이해할 필요가 있다. 1장부터 차례대로 읽은 독자라면 이미 자연스럽게 순차 탐색의 원리를 익혔다. 사실 지금까지 예제 문제에서 N개의 데이터가 있을 때, 그 데..
Python [AtoZ] Chapter 06. 정렬 [ Table of Contents ]더보기더보기기준에 따라 데이터를 정렬1. 정렬 알고리즘 개요2. 선택 정렬3. 삽입 정렬4. 퀵 정렬5. 계수 정렬6. 파이썬의 정렬 라이브러리 실전 문제1. 위에서 아래로2. 성적이 낮은 순서로 학생 출력하기3. 두 배열의 원소 교체 기출 문제1. 국영수2. 안테나3. 실패율4. 카드 정렬하기[ Abstract ]더보기더보기0. 계산 복잡도 : P-NP문제1. DP란? 퀵정렬과는 다르며, 재귀 함수 말고 반복문으로 구현할 것2. 탑다운(=메모이제이션) : 연속적이지 않은 경우 사전dict 자료형 사용 가능3. 보텀업(=DP의 전형적인 형태) : DP테이블 사용4. 피보나치 수열의 시간복잡도 : 재귀(O(2ᴺ)), DP(O(N)) 기준에 따라 데이터를 정렬1. 정렬 ..
Python [AtoZ] Chapter 05. DFS/BFS [ Table of Contents ]더보기꼭 필요한 자료구조 기초1. 스택2. 큐3. 재귀함수 탐색 알고리즘 DFS/BFS1. DFS2. BFS 실전 문제1. 음료수 얼려 먹기2. 미로 탈출 기출 문제1. 특정 거리의 도시 찾기2. 연구소3. 경쟁적 전염4. 괄호 변환5. 연산자 끼워 넣기6. 감시 피하기7. 인구 이동8. 블록 이동하기[ Abstract ]더보기 꼭 필요한 자료구조 기초탐색Search이란 많은 양의 데이터 중에서 원하는 데이터를 찾는 과정을 의미한다. 프로그래밍에서는 그래프, 트리 등의 자료구조 안에서 탐색을 하는 문제를 자주 다룬다. 대표적인 탐색 알고리즘으로 DFS와 BFS를 꼽을 수 있는데 이 두 알고리즘의 원리를 제대로 이해해야 코딩 테스트의 탐색 문제 유형을 풀 수 있다. ..
Python [AtoZ] Chapter 04. 구현 [ Table of Contents ]더보기아이디어를 코드로 바꾸는 구현1. 피지컬로 승부하기2. 구현 시 고려해야 할 메모리 제약 사항3. 채점 환경4. 구현 문제에 접근하는 방법5. 예제 : 상하좌우, 시각 실전 문제1. 왕실의 나이트2. 게임 개발 기출 문제1. 럭키 스트레이트2. 문자열 재정렬3. 문자열 압축4. 자물쇠와 열쇠5. 뱀6. 기둥과 보 설치7. 치킨 배달8. 외벽 점검[ Abstract ]더보기0. 아이디어를 코드로 바꾸는 구현 1. 피지컬로 승부하기코딩 테스트에서 구현Implementation이란 머릿속에 있는 알고리즘을 소스코드로 바꾸는 과정이다. 어떠 문제를 풀든 간에 소스코드를 작성하는 과정은 필수이므로 구현 문제 유형은 모든 범위의 코딩 테스크 문제 유형을 포함하는 개념이다..
Python [AtoZ] Chapter 03. 그리디 [ Table of Contents ]더보기당장 좋은 것만 선택하는 그리디1. 정렬 알고리즘과 같이 출제2. 거스름돈 문제3. 그리디 알고리즘의 정당성 실전 문제1. 큰 수의 법칙2. 숫자 카드 게임3. 1이 될 때까지  기출 문제1. 모험가 길드2. 곱하기 혹은 더하기3. 문자열 뒤집기4. 만들 수 없는 금액5. 볼링공 고르기6. 무지의 먹방 라이브[ Abstract ]더보기0. 그리디 알고리즘은 최적의 해를 구하기 위함1. 문제를 보고 점화식 세우는 연습하기 ex)큰 수의 법칙 : count = int(m/(k+1))*k + m%(k+1)2. 문제에서 1을 먼저 빼라고 해도, 나누기 연산부터하는 코드를 짜는 것이 효율적이다. ex) 1이 될 때까지 당장 좋은 것만 선택하는 그리디그리디Greedy 알고..
Python [AtoZ] Chapter 01. 기본문법 및 복잡도 총정리 [ Table of Contents ] 더보기코딩테스트를 위한 파이썬 문법1. 자료형1) 수 자료형 2) 리스트 자료형 3) 문자열 자료형 4) 튜플 자료형 5) 사전 자료형 6) 집합 자료형 2. 조건문1) 비교, 논리, 기타연산자 2) pass문 3) 조건부표현식 3. 반복문1) while문, for문 2) 반복문 내 continue 3) 다중 반복문 4. 함수1) TestCase 2) def 내 global 변수 3) lambda식 : 정렬라이브러리, 정렬 기준(key) 설정 (Chap 06. 정렬에서 자세히) 5. 입출력1) import sys; sys.stdin.readlin().rstrip() 2) f-string (자료 변환 불필요) : " {변수} " 6. 주요 라이브러리의 문법과 유의점..

반응형