
자료구조 & 알고리즘/알고리즘2023. 1. 15. 00:57알고리즘 시간 복잡도, 공간 복잡도(Time Complexity, Space Complexity) + Big-O
알고리즘(Algorithm) 알고리즘이란 어떠한 문제를 해결하기 위한 방법이다. 예를 들어 회사에 출근하기 위해서는 "회사에 출근하기"라는 문제를 해결하기 위해 "집에서 회사까지 어떤 이동수단을 타고 어떤 루트로 갈 것이다" 라는 방법을 알고 있어야 한다. 방법은 여러 가지가 있을 것이다. 좋은(효율적인) 방법도 있고 나쁜(비효율적인) 방법도 있을 것이다. 좋은 방법과 나쁜 방법은 어떻게 정할 수 있을까? 예를 들어 회사에 출근하기 위한 좋은 방법을 찾고 있다면 기준을 정해야 한다. 가장 빨리 가는 것이 좋은 방법이라면 전용 헬기를 타고 가거나, 비행기를 타고 가면 될 것이다. 가장 저렴하게 가는 것이 좋은 방법이라면 걸어서 가거나, 대중교통을 이용해서 가면 될 것이다. 이렇게 알고리즘의 좋고, 나쁨을 ..