파이썬 기초 문법 문제를 대략 180개 정도 풀었더니 약간 자신감이 생겨서
이젠 진짜 알고리즘 강의를 들어봐도 좋을 것 같다는 생각이 들었다.
유튜브에 이코테 강의가 있어서 한번 들어봤다.
시간제한(수행시간 요구사항)
시간 제한이 1초인 경우, (파이썬의 경우) 해당 시간 복잡도의 알고리즘을 구현하는게 좋다.
( 여기서 N은, [1, 2, 3, 4] 일 경우 4 가 된다.)
N의 범위 | 시간 복잡도 | 명칭 |
500 | O(N3) | 삼차 시간 |
2,000 | O(N2) | 이차 시간 |
100,000 | O(NlogN) | 로그 선형 시간 |
10,000,000 | O(N) | 선형 시간 |
알고리즘 문제 해결 과정
1. 지문 읽기. -- 컴퓨터적 사고를 통해 단계별로 접근
2. 요구사항(복잡도) 분석.
3. 문제 해결을 위한 아이디어 찾기
4. 소스코드 설계 및 코딩
: 대부분의 문제는 핵심 아이디어를 캐치한다면, 간결하게 소스코드를 작성할 수 있는 형태로 출제된다.
: 문제를 온전히 이해하고, 어떻게 코드를 작성할 지 확실히 정리가 된 다음에 코드 작성을 시작해야 한다.