전체 글96 플로이드 워셜 알고리즘 🚩플로이드 워셜모든 노드에서 다른 모든 노드까지의 최단 경로를 모두 계산음의 가중치를 가지는 간선(엣지) 가능합이 음수 가중치를 가지는 사이클이 있어서는 안됨각 단계마다 특정한 노드 k를 거쳐 가는 경우를 확인a에서 b로 가는 최단 거리보다 a에서 k를 거쳐 b로 가는 거리가 더 짧은지 검사노드의 개수 N일 때, 시간 복잡도는 O(N^3) 이므로 노드의 개수가 500개 이하일 때 사용 🚩플로이드 워셜 이해중간에 k 하나를 거쳐가는 게 왜 최단 경로를 구할 수 있는지 이해가 안 됐다.a -> k -> b 의 경로에서 a -> k 의 경로 또한 최단 경로로 최적화 되어 있을 것이니 중간 경로 k 하나만 추가 되어 보이지만 결국 a -> k도 a -> x -> k 처럼 최단 경로로 이루어져 있을 수 있을.. 2024. 10. 12. [Python] 백준 1012번 : 유기농 배추 https://www.acmicpc.net/problem/1012 🚩DFS 코드import sysinput = sys.stdin.readlinesys.setrecursionlimit(10000)def dfs(x, y) : if x = M or y >= N : return False if graph[y][x] == 1 : graph[y][x] = 0 for i in range(4): dfs(x + dx[i], y + dy[i]) return True return FalseT = int(input())dx = [-1, 1, 0, 0]dy = [0, 0, -1, 1]for _ in r.. 2024. 10. 12. 다익스트라 알고리즘 🚩다익스트라 알고리즘특정한 노드에서 출발하여 다른 모든 노드로 가는 최단 경로를 계산다익스트라 최단 경로 알고리즘은 음의 간선이 없을 때 정상적으로 동작현실 세계의 도로는 음의 간선으로 표현되지 않음다익스트라 최단 경로 알고리즘은 그리디 알고리즘으로 분류됨매 상황에서 가장 비용이 적은 노드를 선택해 임의의 과정을 반복 🚩동작 과정출발 노드를 설정최단 거리 테이블을 초기화방문하지 않은 노드 중에서 최단 거리가 가장 짧은 노드를 선택(Greedy)해당 노드를 거쳐 다른 노드로 가는 비용을 계산하여 최단 거리 테이블을 갱신위 과정에서 3번과 4번을 반복 🚩다익스트라 알고리즘 특징그리디 알고리즘 : 매 상황에서 방문하지 않은 가장 비용이 적은 노드를 선택해 임의의 과정을 반복단계를 거치며 한 번 처리된 노.. 2024. 10. 11. [알고리즘 고득점 Kit] Heap : 더 맵게 https://school.programmers.co.kr/learn/courses/30/lessons/42626?language=python3 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 2024. 10. 5. [SQL 고득점 Kit] String, Date : 카테고리 별 상품 개수 구하기 https://school.programmers.co.kr/learn/courses/30/lessons/131529 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 🚩문자열 자르기SUBSTRING()SUBSTRING(LOCATE())SUBSTRING_INDEX()LEFT()RIGHT() 🚩최종 쿼리SELECT SUBSTRING(PRODUCT_CODE, 1, 2) AS CATEGORY, COUNT(PRODUCT_ID) AS PRODUCTSFROM PRODUCTGROUP BY SUBSTRING(PRODUCT_CODE, 1, 2)ORDER.. 2024. 10. 5. 이전 1 2 3 4 5 ··· 20 다음