본문 바로가기

분류 전체보기

(213)
[Leetcode] 210. Course Schedule II - JS https://leetcode.com/problems/course-schedule-ii/description/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------수강해야 하는 총 numCourses 강좌가 있으며 0부터 numCourses - 1까지 레이블이 지정됩니다. prerequisites[i] = [ai, bi]는 수강하려는 경우 먼저 bi 강좌를 수강해야 함을 나타내는 배열 전제 조건이 제공됩니다.예를 들어, [0, 1] 쌍은 코스 0을 수강하려면 먼저 코스 1을 수강해야 함을 나타냅니다.모든 강좌를 마치기 위해 수강해야 하는 강좌의 순서를 반환합니다. 유효한 답변이 많으면 그 중 하나를 반환하십시오. 모든..
[Leetcode] 207. Course Schedule - JS https://leetcode.com/problems/course-schedule/description/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------numCourses: 수강해야 하는 총 강좌의 수0부터 numCourses - 1까지 레이블이 지정됩니다.prerequisites[i] = [ai, bi]는 ai를 수강하려는 경우 먼저 bi 강좌를 수강해야 함을 나타낸다.예를 들어, [0, 1] 쌍은 코스 0을 수강하려면 먼저 코스 1을 수강해야 함을 나타냅니다.모든 과정을 완료할 수 있으면 true를 반환합니다. 그렇지 않으면 false를 반환합니다.제한조건--------------------- 1  2. 접근..
[Leetcode] 399. Evaluate Division - JS https://leetcode.com/problems/evaluate-division/description/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------변수 쌍 방정식의 배열과 실수 값의 배열이 제공됩니다. 여기서 방정식[i] = [Ai, Bi] 및 값[i]는 방정식 Ai / Bi = 값[i]를 나타냅니다. 각 Ai 또는 Bi는 단일 변수를 나타내는 문자열입니다.또한 몇 가지 쿼리가 제공되는데, 여기서 query[j] = [Cj, Dj]는 Cj / Dj = ?에 대한 답을 찾아야 하는 j번째 쿼리를 나타냅니다.모든 쿼리에 대한 답변을 반환합니다.답을 결정할 수 없는 경우 -1.0을 반환합니다.참고: 입력은 항..
[Leetcode] 133. Clone Graph - JS https://leetcode.com/problems/clone-graph/description/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------연결된 무방향 그래프의 노드에 대한 참조가 주어질 때,그래프의 전체 복사본을 반환하라.제한조건--------------------- 노드의 총 갯수는 0 ~ 100개이다.- 1  2. 접근 방법 - DFS접근방법--------------------DFS(깊이우선탐색)으로 접근한다.visited 변수를 Map 자료구조로 초기화하고원본노드의 참조값 => 복사된 노드의 참조값으로 매핑하여 이미 방문한 노드 처리를 해준다.재귀함수 내부에서 방문한 원본 노드라면.. 복사된 노드를..
[Leetcode] 130. Surrounded Regions - JS https://leetcode.com/problems/surrounded-regions/description/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------문자 'X'와 'O'가 포함된 m x n 매트릭스 보드가 주어지며, 둘러싸인 영역을 'X'로 변경한다연결: 셀이 인접한 셀과 수평 또는 수직으로 연결됩니다.지역: 지역을 형성하려면 모든 'O' 셀을 연결하세요.둘러싸기: 영역을 'X' 셀로 연결할 수 있고 영역 셀이 보드 가장자리에 없는 경우 해당 영역은 'X' 셀로 둘러싸여 있습니다.매트릭스 보드의 모든 'O' 구역 중 둘러싸인 영역을 'X'로 대체하라.제한조건--------------------- m ==..
[Leetcode] 200. Number of Islands - JS https://leetcode.com/problems/number-of-islands/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------1(땅), 0(물)의 지도를 나타내는 m x n 이진 그리드가 주어질 때,섬의 갯수를 반환하라.섬은 물로 둘러싸여 있고 인접한 육지가 수평 또는 수직으로 연결되어 형성된다.제한조건--------------------- m == grid.length- n == grid[i].length- 1  2. 접근 방법 - DFS접근방법--------------------DFS(깊이우선탐색)으로 접근한다.현재 요소가 '1'이면, 섬에 방문한 것으로 카운트 값 증가시킨다.현재 요소와 인접한 요소..
[Leetcode] 98. Validate Binary Search Tree - JS https://leetcode.com/problems/validate-binary-search-tree/description/?envType=study-plan-v2&envId=top-interview-150 1. 문제 분석문제분석--------------------이진트리의 루트가 주어질 때, 유효한 BST(이진검색트리)인지 확인하라.- 왼쪽 하위 트리에는 노드의 값보다 작은 값을 가진 노드들만 포함한다.- 오른쪽 하위 트리에는 노드의 값보다 큰 값을 가진 노드들만 포함한다.- 왼쪽, 오른쪽 모두 BST여야 한다.제한조건--------------------- 노드의 갯수는 1 ~ 10^4개이다.- -2^31  2. 접근 방법접근방법--------------------재귀함수에 노드와 노드 값의 최대, ..
[Leetcode] 230. Kth Smallest Element in a BST - JS https://leetcode.com/problems/kth-smallest-element-in-a-bst/description/?envType=study-plan-v2&envId=top-interview-150  1. 문제 분석문제분석--------------------이진검색트리의 root와 정수 k가 주어질 때,모든 노드 중에서 k번째로 작은 값을 반환하라.제한조건--------------------- 1  2. 접근 방법접근방법--------------------중위순회하면 오름차순으로 순회가 가능하다.각 노드 순회시마다 count값 증가하여 k번째와 동일한 node의 값을 반환한다. 3. 코드/** * Definition for a binary tree node. * function TreeNo..