일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 공수추정
- 소프트웨어비용산정
- 메타버스
- BFS
- java프로그래밍
- 사용자스레드
- 커널스레드
- 프로그래머스
- 누가복음
- JPA
- 다운캐스팅
- 차별금지법
- Java
- 정수삼각형
- 공수처
- 말씀묵상
- CBD개발방법론
- COCOMO모형
- 비용산정모델
- 고위공직자범죄수사처
- 금융메타버스
- 분산 데이터베이스
- 파이썬
- 업캐스팅
- 제페토
- 파이썬라이브러리
- DFS
- 코딩테스트
- 운영체제
- d형큐티
- Today
- Total
목록파이썬 (3)
step up

https://programmers.co.kr/learn/courses/30/lessons/43105?language=python3 코딩테스트 연습 - 정수 삼각형 [[7], [3, 8], [8, 1, 0], [2, 7, 4, 4], [4, 5, 2, 6, 5]] 30 programmers.co.kr 검색해보니 대부분의 사람들이 이 문제 풀이를 DP로 푸는데, DP로 풀면 사실 엄청 간단하지만 BFS로도 풀어볼 수 있지 않을까해서 BFS로 풀어 봤다. 문제 풀이) 1. visited 초기값이 0인 삼각형을 만들고 triangle 위 상단 루트노드부터 BFS로 탐색. 2. 왼쪽 아래, 오른쪽 아래만 이동이 가능하기에, dx = [1,1], dy = [0,1] 로 정함. 이동할 다음 좌표는 nx,ny로 변수..
그래프의 모든 노드를 순회하는 두 알고리즘의 가장 큰 차이는 1. 동일한 레벨(너비, breadth)의 형제 노드를 먼저 순회하는가 ?(BFS) 2. 깊은(depth) 노드 부터 순회를 하는가? (DFS) 로직 구성은 동일하지만 큐를 쓰는가, 스택을 쓰는가에 따라 순회 순서가 달라진다. BFS 코드 from collections import deque #graph = { 'A':['B'] , 'B':['A','C','D'], 'C':['A','B'], 'D':['A','C'] } def bfs(graph, start_node): visit = [] queue = deque() queue.append(start_node) while queue: node = queue.popleft() if node not..
▶ itertools : 반복되는 형태의 데이터를 처리하기 위한 유용한 기능 제공 - 순열 : 서로 다른 n개에서 서로 다른 r개를 선택하여 나열 from itertools import permutations data = ['A' , 'B', 'C'] result = list(permutations(data,2)) print(result) > [('A', 'B'), ('A', 'C'), ('B', 'A'), ('B', 'C'), ('C', 'A'), ('C', 'B')] - 조합 : 서로 다른 n개에서 순서에 상관없이 서로 다른 r개를 선택 from itertools import combinations data = ['A' , 'B', 'C'] result = list(combinations(data,2..