본문 바로가기
반응형

Study/Algorithm2

[Algorithm] BFS, DFS, 이진 탐색, 순차 탐색 등 알아보자... 아~ 알고리즘 너무 어려워~ 하지만 공부 하고 넘어가야겠지...? BFS(Breadth-First Search) - 너비 우선 탐색BFS는 가장 가까운 노드부터 차례대로 탐색하는 방식이다.하나의 노드를 방문한 후, 그 노드와 인접한 모든 노드를 먼저 방문하고, 그 다음으로 인접한 노드를 방문하는 방식이다.예시: 친구 관계 탐색상황: 친구들 간의 관계를 나타낸 그래프가 있다고 가정해보자! 'A'라는 친구가 있고 'A'의 친구들은 'B', 'C', 'D'이다. 이제 'A'와 가장 가까운 친구들을 먼저 만나고, 그 다음으로 더 먼 친구들을 만날거다.A - B - E| |C - D탐색 순서(BFS)'A'를 시작으로 'B', 'C', 'D'를 차례대로 방문한다.그다음 'B'의 친구인 'E'를 방문하게된다.BF.. 2025. 1. 9.
[Algorithm] 시간복잡도 (amortized time complexity) 알고리즘을 좀 제대로 공부해보기 위해서 일요일이지만 공부 도저어언! 시간 복잡도 (amortized time complexity)시간 복잡도는 알고리즘이 실행되는 동안 걸리는 시간을 입력 크기 n에 따라 측정하는 방식이다. 간단하게 말하면, "데이터 크기가 커질수록 알고리즘이 얼마나 느려지는지"를 나타낸다.계산 과정기본 연산 찾기: 알고리즘에서 가장 자주 반복되는 핵심 연산(덧셈, 비교, 곱셈 등)을 찾는다.반복 횟수 세기: 이 기본 연산이 몇 번 실행되는지 n에 대해 식을 세운다.가장 큰 영향 찾기: 계산 결과에서 입력 n이 커질수록 지배적인 항(가장 빠르게 증가하는 항)만 고려한다.상수 제거: 상수는 무시한다. (예: 3n^2 + 5n + 10 -> O(n^2))대표적인 종류O(1): 상수 시간. 입.. 2024. 12. 31.
반응형