일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- android
- 해슁
- 정렬
- 클린코드
- javascript
- Spring
- 다이나믹 프로그래밍
- DFS
- inflearn
- CleanCode
- algorithm
- 알고리즘
- codecademy
- java
- DP
- 순환
- 검색트리
- html
- 자바
- BFS
- 코딩테스트
- front-end
- Web
- CSS
- Kotlin
- SWEA
- Color
- SQL
- 구현
- 프로그래머스
- Today
- Total
목록BFS (3)
깡뇽
BFS 문제로 간다...!!! 4963번 섬의 개수 풀이 [시도1] 맞았습니다!! with 솔루션 from collections import deque def bfs(x, y): queue = deque() queue.append((x,y)) ground[x][y] = 0 dx = [-1, 1, 0, 0, 1, -1, -1, 1] dy = [0, 0, -1, 1, 1, -1, 1, -1] while queue: position = queue.popleft() for i in range(8): nx = position[0] + dx[i] ny = position[1] + dy[i] if 0
Day10 DFS/BFS 문제풀기 - 미로풀기 (난이도 중하) N X M 크기의 직사각형 미로에 갖혀 있는데 (1,1) 위치에서부터 (N,M) 출구까지 이동한다. 괴물이 있는 0, 괴물이 없는 1로 이루어진 미로를 탈출하기 위해 움직여야 하는 최소 칸의 개수를 구하자. 첫째 줄 : N(4≤N)과 M(M≤200) N줄 : M개의 정수(0 또는 1). 공백없이. 시작 칸과 마지막 칸은 항상 1 미로 탈출 풀이 #솔루션 from collections import deque n, m = map(int, input().split()) world = [] for i in range(n): world.append(list(map(int,input()))) direction = [(-1,0), (1, 0), (0, -..
Day8 탐색(Search) : 많은 데이터 중에서 원하는 데이터를 찾는 과정 DFS/BFS는 대표적인 탐색 알고리즘. 스택 & 큐에 대한 이해가 필요. 자료구조(Data Structure) : 데이터를 표현, 관리, 처리하기 위한 구조 - push : 데이터 삽입 - pop : 데이터 삭제 - overflow : 수용 가능한 데이터의 크기를 넘은 상태에서 삽입 연산 수행 시 발생 - underflow : 자료구조에 데이터가 없는데 삭제 연산 수행 시 발생 스택(Stack) : FILO(First In Last Out). 선입후출. LIFO(Last In First Out). 후입선출. => 먼저 쌓은 것은 나중에 뺄 수 있고, 나중에 쌓은 것은 먼저 뺄 수 있음. - append() : 리스트 맨 뒤에..