왜 사용하는데? 컴퓨터에는 변수가 많아서 프로그램의 성능을 정확하게 측정할 수 있는 방법이 없거든! 대략적으로 측정하기 위해 사용한다!
O(1) < O(logn) < O(n) < O(nlogn) < O(n^2) < O(2^n) < O(n!)
크기가 클 수록 속도는 느리다.
상수항 무시 / 가장 큰 항 이외의 항은 무시
> '더 좋고 더 나쁜 자료구조는 없다!'
특정 상황에서 유리한 알고리즘과 덜 유용한 알고리즘이 존재할 뿐이다!
라고 강사님이 말씀하신게 기억에 남는다. 주어진 문제 상황을 잘 파악하고 필요한 알고리즘을 사용할 줄 아는 사람이 되어야지!
그리고 그동안 공부하기 싫어서 흐린눈 -.- 하며 무시했던 시간복잡도에 관해서도 이번에 제대로 이해하게 된것 같아서 뿌듯하다 ㅎㅎ
바쁘더라도 주기적으로 알고리즘/코테 공부 조금씩 하기 !
https://cooervo.github.io/Algorithms-DataStructures-BigONotation/index.html