일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- NoSQL
- db
- 3주차
- node winston
- 1주차
- Get
- 스파르타코딩클럽
- post
- 숙제
- JWT
- HTTPS
- OpenAPI
- 개발일지
- 비동기
- Sequelize
- nginx
- SQL
- MongoDB
- 트랜잭션
- Transaction
- Node.js
- 4주차
- cors
- 노드 윈스턴
- 2주차
- 부트스트랩
- 위키백과
- 웹 스크래핑(크롤링)
- 5주차
- 항해99
Archives
- Today
- Total
얼음꽃의 일지
이분 탐색 본문
728x90
이분 탐색은 반으로 쪼개가면서 찾고자 하는 값을 얻어내는 방법
1부터 16 까지 16개 이므로 반으로 쪼개면 중간은 8입니다. 그리고 찾고자 하는 숫자는 8 이니 8 윗부분은 확인을 할 필요가 없어집니다.
이제 같은 방법으로 1~8 구간에서 반으로 쪼개면 4혹은 5가 되는데 아무 쪽으로 해도 큰 문제가 없으므로 거기서 또 분리를 하면 다음과 같습니다.
이제 남은 곳에서 반으로 쪼개게 되면 중간이 3이 되고 저희가 찾는 값에 도착하게 됩니다.
이렇게 보면 이진 / 이분 탐색이 아니라 그냥 탐색을 하게되면 최악의 경우 16번까지 다 확인을 해야하기 때문에 시간 복잡도가 O(n)이 나오게 됩니다. 그러나 이와 같이 이진 / 이분 탐색을 하게되면 3번만에 값을 찾을 수 있게 됨으로 최악의 경우라고 하면 O(logn)이 걸리게 됩니다.
따라서, 이진 / 이분 탐색트리는 반으로 쪼개가면서 값을 찾는 것을 의미하고 시간 복잡도는 O(logn) 입니다.
728x90
'항해 일지' 카테고리의 다른 글
인덱스??? (0) | 2022.12.18 |
---|---|
트리(Tree) 와 그래프(Graph) (0) | 2022.12.18 |
Nginx 와 Apache (0) | 2022.12.18 |
npm(Node Packaged Manager) (0) | 2022.12.18 |
Express 얘는 뭐꼬? (0) | 2022.12.18 |