다시 한번 개념에 대해서 생각하는 시간을 가지게 되었다. 프로그램에서 왜 빅오 개념이 중요한지는 내가 생각하는 빠르다 느리다는 것을 어떻게 일반화 시켜서 적용을 하는가에 대한 것이다.
사용하는 HW에 따라서 동일한 알고리즘의 성능이 다르게 나올 수 있기 때문에 빅오를 사용해서 알고리즘의 성능을 판단하는 부분이 된다.
exponent (지수: 거듭제곱을 나타내는 수) <-> logarithm (로그)
O (1) 입력값이 커져도 처리 단계가 한 단계인 경우 |
O (log n) 처리하는 단계가 특정 요인에 의해서 줄어 드는 경우 |
O (n) Input이 N 만큼 단계가 필요한 경우 |
O (n log n) Input 의 수가 N번에서 해당 N 번당 필요한 단계들이 특정요인으로 줄어드는 경우 |
O (n^2) Input의 단계의 수가 n의 제곱인 경우 |
반응형
'Software > Embedded system' 카테고리의 다른 글
Dangling Pointer_ChatGPT code review (0) | 2022.12.24 |
---|---|
Pointer in C 해석 포인터배열& 배열포인터 (0) | 2022.12.20 |
fmt 와 Variadic function 정리 (0) | 2022.07.10 |
Sizeof()for struct and pointer with pack() 64bit system (0) | 2022.06.04 |
IPC Concept (0) | 2022.02.13 |