[온라인 : 기본 알고리즘] 그래프 탐색
## DFS def dfs(graph, v, visited): # 현재 노드 방문처리 visited[v] = True print(v, end=' ') # 현재 노드와 연결된 다른 노드를 재귀적으로 방문 for i in graph[v]: if not visited[i]: dfs(graph, i, visited) graph = [ [], [2, 3, 8], #1과 연결된 [1, 7], #2와 연결된 [1, 4, 5], #3과 연결된 [3, 5], #4와 연결된 [3, 4], #5와 연결된 [7], [2, 6, 8], [1, 7] ] # 각 노드의 방문 정보 visited = [False] * 9 dfs(graph, 1, visited) ## BFS from collections import deque def..
2022. 3. 1.
[온라인 : 기본 알고리즘] 선택정렬, 삽입정렬, 퀵정렬, 계수정렬
# 선택정렬 def choiceFunc(ls) : for i in range(len(ls)): min_index = i for j in range(i+1, len(ls)): if ls[min_index] > ls[j]: min_index = j ls[i], ls[min_index] = ls[min_index], ls[i] return ls # 삽입정렬 def insertionFunc(ls): for i in range(1,len(ls)): for j in range(i, 0, -1): if ls[j] < ls[j-1]: ls[j], ls[j-1] = ls[j-1], ls[j] else : break return ls # 퀵정렬 def quickSort(array, start, end): if start ..
2022. 2. 21.