반응형
알고리즘이란?
어떤 문제를 풀기 위한 절차나 방법
- 어떤 문제를 풀기 위한 절차나 방법
- 주어진 '입력'을 '출력'으로 만드는 과정
- 각 단계는 구체적이고 명료해야 함
알고리즘 분석이란?
알고리즘의 성능이나 특징을 분석하는 것
- 알고리즘을 푸는 여러 가지 방법이 있음
- 여러 가지 알고리즘 중에 상황에 맞는 적당한 알고리즘을 골라 문제를 풀 수 있음
- 그러기 위해서는 어떤 알고리즘이 어떤 특징을 지니고 있으며 얼마나 계산이 빠르고 편한지 알아야 함
알고리즘 평가하기
1) 계산 복잡도 평가하기
- 코드 실행시간을 확인하는 방법
- 참조 : https://camel-it.tistory.com/97
Python 코드 실행 시간 측정 (성능측정)
python 코드의 순수 연산 시간과 전체 실행 시간을 측정하는 방법은 다음과 같습니다. 1. 순수 연산 시간의 측정 (코드의 성능을 확인): process_time()을 사용 process_time()은 sleep, io와 같은 pending time을..
camel-it.tistory.com
- 자료형 별로 계산 복잡도
- 참조 : https://chancoding.tistory.com/43
[Python] 파이썬 자료형 및 연산자의 시간 복잡도(Big-O) 총 정리
시간 복잡도를 알아야 하는 이유 백준에서 알고리즘을 풀다 보니 '시간 초과'되는 경우를 자주 겪었습니다. 문제를 풀고 나서도 결과 시간이 다른 사람들보다 상당히 높게 나오는 경우가 있었는
chancoding.tistory.com
2) 메모리 사용랑 확인하기
- 파이썬 기본 라이브러리 활용 : tracemalloc
- 참조 : https://docs.python.org/ko/3/library/tracemalloc.html
tracemalloc — 메모리 할당 추적 — Python 3.10.5 문서
tracemalloc — 메모리 할당 추적 소스 코드: Lib/tracemalloc.py tracemalloc 모듈은 파이썬이 할당한 메모리 블록을 추적하는 디버그 도구입니다. 다음 정보를 제공합니다: 객체가 할당된 곳의 트레이스백
docs.python.org
- 외부 라이브러리 활용 : psutil
- 참조 : https://frhyme.github.io/python/python_check_memory_usage/
psutil을 사용해서 python의 CPU, RAM의 사용량을 확인하자.
intro.
frhyme.github.io
반응형
'알고리즘' 카테고리의 다른 글
[기초 알고리즘] 1부터 n까지의 합 구하기 (0) | 2022.07.18 |
---|---|
무료 알고리즘 문제 풀 수 있는 온라인 사이트 리스트와 특징 모음 (0) | 2021.04.22 |
알고리즘이란-컴퓨터 알고리즘 (0) | 2018.06.19 |
[파이썬] 백준 알고리즘 11721번 (0) | 2018.04.13 |
[파이썬] 백준 알고리즘 11720번 (0) | 2018.04.13 |