
BFS 너비 우선 탐색, 가까운 노드부터 우선적으로 탐색하는 알고리즘 큐(queue) 자료 구조를 이용함 은행 대기줄과 비슷 먼저 들어온 데이터가 먼저 나옴 deque를 사용함 popleft: 처음 입력한 원소 삭제 그래프로 보기 1→2→3→8→2을 popleft시키고 2와 인접한 노드 보기→7→3을 leftpop시키고 3과 인접한 노드 보기→4→5→6 코드로 보기 from collections import deque def bfs(graph, start, visited): queue = deque([start]) visited[start] = True while queue: v=queue.popleft() print(v,end=' ') for i in graph[v]: if not visited[i]:..

DFS 깊이 우선 탐색 stack(쌓는 것) 자료구조(재귀함수)를 이용함 stack은 파이썬에서 list를 이용하면 됨 append는 뒤에 붙이기 pop은 가장 최신으로 붙인 값을 빼기 list[::-1]는 최상단(마지막에 append한 순으로) 출력 보통 번호가 낮은 인접 노드부터 방문함 그래프로 보기 그래프 DFS 풀이: 1→2→7→6→6에서 방문하지 않은 인접노드가 없음→다시 7로→8→3→4→5 코드로 해보기! 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,7],[1,4,5],[3,5],[3,4]..
문제 재용이는 최신 컴퓨터 10대를 가지고 있다. 어느 날 재용이는 많은 데이터를 처리해야 될 일이 생겨서 각 컴퓨터에 1번부터 10번까지의 번호를 부여하고, 10대의 컴퓨터가 다음과 같은 방법으로 데이터들을 처리하기로 하였다. 1번 데이터는 1번 컴퓨터, 2번 데이터는 2번 컴퓨터, 3번 데이터는 3번 컴퓨터, ... , 10번 데이터는 10번 컴퓨터, 11번 데이터는 1번 컴퓨터, 12번 데이터는 2번 컴퓨터, ... 총 데이터의 개수는 항상 ab개의 형태로 주어진다. 재용이는 문득 마지막 데이터가 처리될 컴퓨터의 번호가 궁금해졌다. 이를 수행해주는 프로그램을 작성하라. 입력 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트 케이스에 대해 정수 a와 b가 주어진다...
문제 상근이는 요즘 설탕공장에서 설탕을 배달하고 있다. 상근이는 지금 사탕가게에 설탕을 정확하게 N킬로그램을 배달해야 한다. 설탕공장에서 만드는 설탕은 봉지에 담겨 있다. 봉지는 3킬로그램 봉지와 5킬로그램 봉지가 있다. 상근이는 귀찮기 때문에, 최대한 적은 봉지를 들고 가려고 한다. 예를 들어, 18킬로그램 설탕을 배달해야 할 때, 3킬로그램 봉지 6개를 가져가도 되지만, 5킬로그램 3개와 3킬로그램 1개를 배달하면, 더 적은 개수의 봉지를 배달할 수 있다. 상근이가 설탕을 정확하게 N킬로그램 배달해야 할 때, 봉지 몇 개를 가져가면 되는지 그 수를 구하는 프로그램을 작성하시오. 풀이 입력값 N이 5배수일 때 N을 5로 나눈 몫 출력 입력값 N이 5배수가 아닐 때 3을 빼주고 count에 1을 더해줌(..
- Total
- Today
- Yesterday
- 경제신문
- SW
- 데이터
- 경제
- 프로그래머스
- 코드
- 그래프
- 보안
- 데이터분석
- 코테
- 스마트워치
- 함수
- 모듈
- 자바
- 클래스
- 프로그래밍
- plot
- 코딩
- mysql
- 개발
- python
- 코딩테스트
- 파이썬
- sql
- R
- 영어회화
- 금리
- 머신러닝
- 영어
- Programming
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |