본문 바로가기
728x90
반응형

탐색2

Swift로 DFS 탐색하기 DFS(Depth-First Search)는 그래프를 탐색하는 알고리즘 중 하나로, 깊이를 우선으로 탐색합니다. 이번 예제에서는 Swift 언어를 사용하여 DFS 탐색을 구현해보도록 하겠습니다. 그래프 구현하기 먼저, DFS 탐색을 수행할 그래프를 구현해야 합니다. 그래프는 노드(Node)와 간선(Edge)으로 이루어져 있으며, Swift에서는 일반적으로 인접 리스트(Adjacency List)를 사용하여 그래프를 표현합니다. 인접 리스트는 각 노드에 연결된 다른 노드들의 리스트를 저장하는 방식입니다. class Graph { var adjacencyList: [Int: [Int]] = [:] // 인접 리스트 func addEdge(_ u: Int, _ v: Int) { if adjacencyList[.. 2023. 7. 3.
알고리즘 탐색의 종류와 특징 안녕하세요! 이번에는 알고리즘 탐색의 다양한 종류와 각각의 특징에 대해 알아보겠습니다. 데이터에서 원하는 값을 찾는 탐색 작업은 프로그래밍과 데이터 처리에서 매우 중요한 부분이므로, 다양한 탐색 알고리즘을 숙지하는 것이 필요합니다. 선형 탐색 (Linear Search) 선형 탐색은 가장 간단하고 기본적인 탐색 방법입니다. 데이터를 처음부터 끝까지 순차적으로 검사하여 원하는 값을 찾습니다. 정렬 여부와 상관없이 모든 데이터에 대해 탐색을 수행할 수 있습니다. 시간 복잡도는 데이터의 크기에 비례하므로, 최악의 경우 O(n)입니다. 이진 탐색 (Binary Search) 이진 탐색은 정렬된 데이터에서 사용할 수 있는 효율적인 탐색 방법입니다. 데이터를 중간값과 비교하여 탐색 범위를 반으로 줄여가는 방식으로 .. 2023. 6. 27.
728x90
반응형