2024/12/31 2

[프로그래머스] 미로 탈출 명령어 (c++)

출처 : https://school.programmers.co.kr/learn/courses/30/lessons/150365 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr풀이 방법일반적인 dfs로 풀이할 수 있다.방향의 우선순위를 d l r u로 dy, dx를 설정해 사전순으로 dfs를 방문하도록 설정을 했다.또 사전순으로 탐색을 했기 때문에 만약 도착지에 도달을 하게 된다면, 탐색을 멈추고 답을 도출했다. 또 시간을 줄이기 위해 K에서 출발지와 도착지의 거리의 차가 2로 나누어 떨어지지 않는다면, 도착 불가능한 경우이므로 제거했다. 또한 중복 탐색을 방지하기 위해, y, x지점에 cnt의 횟수를 가진..

Algorithm 2024.12.31

[B트리] 속성과 삽입

출처 : https://www.youtube.com/watch?v=bqkcoSm_rCsB tree아래와 같이 이진트리에서 확장해 자녀에 3개의 값을 저장하고 싶어 사용한 트리이다. 자녀를 최대 몇 개까지 가질 수 있게 할 것이냐가 중요하다.파라미터M = 각 노드의 최대 자녀 노두 수M-1 = 각 노도의 최대 key 수[M/2] = 각 노트의 최소 자녀 수 (루트랑 리프노드는 제외한다.)[M/2] - 1 = 각 노드의 최소 key 수  특징internal 노드의 key 수가 x라면 자녀 노드의 수는 언제나 x+1개이다.그러므로 아래와 같은 경우는 존재하지 못한다.즉 노드는 최소 하나의 key를 가지기 때문에, 몇 차 b tree인지 상관없이 최소 두 개의 자녀는 가진다.M이 정해지면 root를 제외하고는 ..

자료구조 2024.12.31