🐣(75)
-
9019 swift - DSLR
사용 알고리즘 BFS [Swift] Breadth-First Search / BFS BFS (Breadth-First Search) 인접한 노드를 먼저 탐색하는 방식. O(Vertex+Edge) A→B→C→D→E→F→G→H 해당하는 그래프는 아래와 같이 인접 리스트로 나타낼 수 있다. let graph: [String: [String]] = [ "A" : ["B", "C"], chanhhh.tistory.com 사용 자료구조 Queue [Swift] (자료구조) 큐 / Queue import Foundation class Queue { var enQueue: [T] = [] var deQueue: [T] = [] var count: Int { return enQueue.count + deQueue.co..
2023.03.03 -
[Swift] BackTracking / 백트래킹 / 퇴각검색
BackTracking / 백트래킹 / 퇴각검색 여러 후보 해 중에서 특정 조건을 충족시키는 모든 해를 찾는 알고리즘. 해를 찾는 도중 막히면 돌아가 다시 해를 찾아간다. 1. 해를 찾아가는 과정은 '루트'에서 부터 시작. (루트 또한 하나의 부분해) 2. 현재 위치한 부분해에서 선택이 가능한 다음 부분해의 목록을 얻음. 3. 2 에서 얻은 목록의 부분해들을 하나씩 방문. 4. 방문한 부분해가 요구하는 조건을 만족시키면 그 자리에서 2, 3 과정을 수행하고, 그렇지 않으면 그 이전 부분해로 돌아 나와 다른 부분해를 시도. 5. 최종해를 얻을 때까지, 또는 모든 경우의 수를 확인해도 해가 없음을 확인했을 때 까지 2,3,4 과정을 차례대로 반복.
2023.02.28 -
6186 swift - Best Grass
사용 알고리즘 BFS [Swift] Breadth-First Search / BFS BFS (Breadth-First Search) 인접한 노드를 먼저 탐색하는 방식. O(Vertex+Edge) A→B→C→D→E→F→G→H 해당하는 그래프는 아래와 같이 인접 리스트로 나타낼 수 있다. let graph: [String: [String]] = [ "A" : ["B", "C"], chanhhh.tistory.com 사용 자료구조 Queue [Swift] (자료구조) 큐 / Queue import Foundation class Queue { var enQueue: [T] = [] var deQueue: [T] = [] var count: Int { return enQueue.count + deQueue.co..
2023.02.27 -
[Swift] Breadth-First Search / BFS
BFS (Breadth-First Search) 인접한 노드를 먼저 탐색하는 방식. O(Vertex+Edge) A→B→C→D→E→F→G→H 해당하는 그래프는 아래와 같이 인접 리스트로 나타낼 수 있다. let graph: [String: [String]] = [ "A" : ["B", "C"], "B" : ["A", "D", "E"], "C" : ["A", "F", "G"], "D" : ["B"], "E" : ["B", "F", "H"], "F" : ["C", "E", "G"], "H" : ["E"] ] 너비 우선 탐색은 보통 두 개의 큐로 구현 방문 해야하는 needVisitQueue 방문 한 노드를 저장하는 visitedQueue 1. 처음으로 탐색할 노드의 데이터를 needVisitQueue에 삽입...
2023.02.27 -
시간 초과 문제 해결
보호되어 있는 글입니다.
2022.09.07