![빅오 표기법](https://img1.daumcdn.net/thumb/R750x0/?scode=mtistory2&fname=https%3A%2F%2Fblog.kakaocdn.net%2Fdn%2FwGhd5%2FbtsHFwCg9C9%2FObN5OdYt5X8EYvRfrApXe1%2Fimg.png)
빅오 표기법JAVA2024. 5. 28. 14:19
Table of Contents
위 그래프가 나타내는건 연산 횟수 와 연산 증가량 이다.
정확한 속도가 아닌 얼마나 빠르고 얼마나 느린지 상대적으로 그래프화 한것
O(1) : 1번의 연산으로 수행한다. ( 예: 배열 인덱스 찾기)
배열의 인덱스를 바로 찾을수있는 이유 ?
예를들어 int 배열을 만들었을 경우 , int 는 4byte를 갖고있으니 byte를 계산해 해당 인덱스를 바로 찾을수있다
O(log n) : log n 만큼 연산 (예 : 이진 탐색 알고리즘은 입력 크기를 반씩 줄여가며 검색을 수행)
O(n) : n번의 연산을 수행한다 ( 예 : 배열에서 주어진값 같은 값 찾기)
인덱스 찾기와 달리 값을 찾는건 해당 배열의 칸마다 확인을 해야한다.
O(nlog n) : n * log n 만큼 연산 (예 :보통 정렬 알고리즘이나 분할 정복 알고리즘(
O(n2) : n * n 의 연산을 수행한다 ( 예 : for 문안의 for문)
현재 공부중이라 하면서 내용추가할 예정.
'JAVA' 카테고리의 다른 글
ArrayList 와 LinkedList (0) | 2024.06.13 |
---|---|
length 와 size 의 차이 (0) | 2024.06.13 |
@Kdkcity :: owenCity
이제 갓 시작한 개발자 블로그 계속 발전하겠습니다. 최예나 팬입니다.
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!