알고리즘 코딩 테스트 유형 그리디 : 현재 상황에서 가장 좋아 보이는 것만을 선택하는 알고리즘 구현: 머릿속에 있는 알고리즘을 정확하고 빠르게 프로그램으로 작성하기 DFS/BFS: 그래프를 탐색하기 위한 대표적인 알고리즘 정렬: 연속된 데이터를 기준에 따라서 정렬 이진 탐색: 탐색 범위를 반으로 좁혀가며 빠르게 탐색하기 다이나믹 프로그래밍: 한 번 계산한 문제는 다시 계산하지 않도록 하는 알고리즘 최단 경로: 특정 지점까지 가장 빠르게 도달하는 방법 찾기 그래프 이론: 기타 그래프 관련 이론들 활용한 문제 무작위로 프로그래머스와 백준에 있는 문제를 풀어왔는데, 개념 정리가 필요할 것 같아 책을 보며 정리를 시작한다. 개념 정리 + 관련 문제 풀이 형식으로 포스팅해야겠다. [reference] 도서 "이것..
파이썬
코테 문제를 풀다보면 "복잡도"라는 개념을 만나게 된다. 알고리즘 문제를 풀때는 보통 시간 복잡도를 의미한다. 프로그래머스를 통해 문제를 풀다보면 몇개의 테스트 케이스에서 시간 제한을 넘겨 통과하지 못한 적이 종종 있었다. 그래서 우선 시간 복잡도에 대한 개념을 정리해보고자 한다. 복잡도의 종류 동일한 기능을 수행하는 알고리즘이 있다면 일반적으로 복잡도가 낮을수록 좋은 알고리즘 trade-off 관계 시간 복잡도 특정한 크기의 입력에 대하여 알고리즘이 얼마나 오래 걸리는지 의미 알고리즘을 위해 필요한 연산의 횟수 공간 복잡도 특정한 크기의 입력에 대하여 알고리즘이 얼마나 많은 메모리를 차지하는지를 의미 알고리즘을 위해 필요한 메모리의 양 표현 방식 빅오 표기법 명칭 $O(1)$ 상수 시간 $O(logN)..
https://www.acmicpc.net/step 단계별로 풀어보기 단계별은 @jh05013님이 관리하고 계십니다. 단계제목설명정보총 문제내가 맞은 문제1입출력과 사칙연산입력, 출력과 사칙연산을 연습해 봅시다. Hello World!142조건문if 등의 조건문을 사용해 봅시다 www.acmicpc.net Python 입출력과 사칙연산 기초 문제를 풀면서 알게 된 점, 헷갈렸던 점 등을 정리해보겠다. 지금까지 프로젝트하면서 꽤 파이썬을 잘 다룬다 생각했었는데 정말 오만한 생각이었다 .. ㅋㅋ 초심자의 마음으로 차근차근 정리해보겠다. 1. print 의 활용 print(" ") 따옴표 없을 경우 에러 / " 와 ' 혼합해서 썼을 경우 에러 줄바꿈해서 출력하고 싶을 경우 ; 활용 print("강한친구 대한육..