chaneesong's blog
취소

Course Schedule

207. Course Schedule 문제 설명 수강해야하는 numCourses 코스의 총 개수는 0부터 numCourses - 1까지 표시됩니다. 배열 prerequisites가 주어지며, 여기서 prerequisites[i] = [a, b]는 a를 수강하려면 b를 먼저 수강해야함을 나타냅니다. 예를 들어, [0, 1]쌍은 코스 0을 수강...

Reconstruct Itinerary

332. Reconstruct Itinerary 문제 설명 tickets[i] = [from, to]로 출발 및 도착 공항을 나타내는 항공권 tickets가 주어집니다. 여정을 순서대로 정렬하고 반환하세요. 모든 항공권은 “JFK”에서 시작하는 사람의 항공권이므로 “JFK”에서 시작해야 합니다. 유효한 여정이 여러 개인 경우, 어휘 순서가 작은 ...

Subsets

78. Subsets 문제 설명 중복없는 정수 배열 nums가 주어질 때, 가능한 모든 subsets를 반환하세요. 정답에는 중복된 subsets가 있어서는 안됩니다. 어떠한 정렬로도 반환할 수 있습니다. 해결 방법 모든 조합을 구하는 문제로, 재귀에 들어갈 때마다 item을 넣고, answer에 넣는 과정을 끝까지 반복하면 된다. 이 문제는 ...

Zigzag Conversion

6. Zigzag Conversion 문제 설명 문자열 "PAYPALISHIRING"을 주어진 행 수에 대해 다음과 같은 지그재그 패턴으로 작성합니다. P A H N A P L S I I G Y I R 그런 다음 한줄 씩 읽습니다: "PAHNAPLSIIGYIR" 문자열과 변환을 위한 행의 수가 주어지면 변환을 수항해는 코드를...

Combination Sum

38. Combination Sum 문제 설명 중복되지 않는 정수 배열 canditates와 타겟 정수 target이 주어질 때, 선택한 숫자의 합이 target이 되는 candidates의 고유 조합 리스트를 반환하세요. 정렬은 신경쓰지 않습니다. 해결 방법 해당 문제는 Combinations를 응용한 문제로 링크의 문제를 제대로 이해했다면 ...

Combinations

77. Combinations 문제 설명 두 정수 n과 k가 주어질 때, [1, n]의 범위에서 k개의 가능한 모든 조합을 리턴하세요. 정답은 어떠한 어떠한 순서로도 반환할 수 있습니다. 해결 방법 dfs(재귀)를 활용하여 모든 조합을 구한다. dfs는 현재 조합을 저장하는 배열(elements)과 시작위치를 나타내는 depth를 매개변...

46. Permutations

46. Permutations 문제 설명 중복이 없는 정수 배열 nums가 주어질 때, 가능한 순열을 모두 반환하세요. 정답에 정렬은 필요하지 않습니다. 해결 방법 dfs(재귀)를 활용하여 순열을 구현한다. 결과부터 말하자면, 현재 만들고 있는 순열이 nums와 크기가 같아질 때, answer에 만든 순열을 넣는다. 프로세스는 아래와 같다. ...

Letter Combinations of a Phone Number

17. Letter Combinations of a Phone Number 문제 설명 2-9까지 숫자에 포함 된 문자열이 주어질 때, 주어진 숫자로 표현가능한 모든 문자 조합을 반환하세요. 어떤 순서로든 답을 반환하세요. 해결 방법 dfs 탐색을 통해 가능한 모든 조합을 탐색한다. 숫자에 포함된 문자열은 <숫자: 문자열>로...

Number of Islands

200. Number of Islands 문제 설명 '1'(땅)과 '0'(물)로 구성된 지도를 나타내는 m x n 2차원 배열이 주어질 때, 섬의 개수를 리턴하세요. 섬은 물로 둘러싸여 있으며 땅이 수직 또는 수평으로 연결되어 구성된다. 배열의 네 방향의 가장자리는 물로 둘러싸여 있다고 가정합니다. 해결 방법 재귀를 활용한 dfs 탐색을 진행...

Top K Frequent Elements

347. Top K Frequent Elements 문제 설명 정수 배열 nums와 정수 k가 주어질 때, k개의 가장 자주 등장하는 요소를 반환합니다. 정답은 정렬이 필요 없습니다. 해결 방법 배열의 원소 num과 등장 횟수 frequent가 있으면 <num: frequent>로 맵을 구성한 후 해당 엔트리를 frequent 기준으...