알고리즘

    알고리즘의 기초 Big-O Notation과 복잡도(Complexity)

    Big-O Notation Big-O는 알고리즘의 효율성을 나타내는 지표로서 알고리즘의 시간 복잡도와 공간 복잡도에 사용하며, 불필요한 연산들을 제거하고 알고리즘 분석을 쉽게 할 목적으로 사용된다. 시간복잡도와 공간복잡도 시간 복잡도(Time Complexity): 입력된 N의 크기에 따라 실행되는 조작의 수를 나타낸다. 공간 복잡도(Space Complexity): 알고리즘이 실행될 때 사용하는 메모리의 양을 나타낸다. 각 Big-O 표기법에 대한 시간복잡도(Time Complexity) Big-O는 다양한 실행시간이 존재하여, 다양하게 표현되지만, 가장 대표적인 표기법을 나열했다. O(1) 시간 복잡도 Constant time 입력 데이터의 크기에 상관없이 일정한 시간이 걸리는 알고리즘의 시간복잡도를..