320x100

코딩테스트 준비/leetcode 61

77. Combinations

https://leetcode.com/problems/combinations/ Combinations - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 2개의 정수(k, n)가 주어졌을 때, 1부터 n까지의 조합에서 갯수 k를 만족하는 유일 목록을 반환하는 문제다. n = 4, k = 2인 경우 {1,2}, {1,3}, {1,4}, {2, 3}, {2, 4}, {3, 4} 가 정답이 되겠다. class Solution { public: void solve(vec..

79. Word Search

https://leetcode.com/problems/word-search/ Word Search - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 2차원 벡터에 문자의 목록과 단어가 주어졌을 때, 상하좌우로만 움직여서 해당 단어가 만들어지는지 확인하는 문제다. 보자마자 방법이 떠올라 만들었는데 자꾸 테스트케이스에 하나씩 하나씩 걸려서 개빡쳤다. 야근하고와서 시간도 없는데 쓸데없이 시간 잡아먹는거 같아 방법은 맞았으니 Discuss꺼 가져왔다. 시작점부터 상하좌..

75. Sort Colors

https://leetcode.com/problems/sort-colors/ Sort Colors - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 색상 정보(0,1,2) 3가지 목록이 주어졌을 때, 라이브러리를 사용하지 않고 정렬하는 문제다. 단순히 정렬이라 하길래 Quick sort로 구현을 했는데, 속도와 메모리 상으로 낮게 나오길래 Discuss를 통해 다른 사람의 답을 찾아보니 단순히 순환하며 low(0), mid(1), high(2)로 나누어 posi..

62. Unique Paths

https://leetcode.com/problems/unique-paths/ Unique Paths - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 임의의 정수 m, n이 주어졌을 때 해당 크기의 가로세로 좌판에서 좌상측부터 우하측까지 도달할 수 있는 유일한 경로의 개수를 반환하는 문제다. 1. 특정 지점(i, j)까지 방문할 수 있는 경우의 수는 (i-1, j)와 (i, j-1) 지점 방문 경우의 수의 합이다. (이걸 안풀어봤으면 어떻게 아나 ㅡㅡ.. ) ..

61. Rotate List

https://leetcode.com/problems/rotate-list/ Rotate List - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com node 목록과 임의의 정수가 주어졌을 때, 임의의 정수만큼 목록을 rotation 시켜 목록을 반환하는 문제다. 예상과 정답이 다르지 않은 방법이였다. [C++] /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *n..

86. Partition List

https://leetcode.com/problems/partition-list/ Partition List - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com node 목록의 header와 임의의 정수가 주어졌을 때, 임의의 정수보다 작은 val를 가진 node는 임의의 정수 node보다 left에 존재하도록 목록을 변경해 반환하는 문제다. 리스트를 순회하며 임의의 정수보다 작은 node면 앞단 목록(front)에, 크면 뒷단 목록(back)에 연결을 추가하고,..

78. Subsets

https://leetcode.com/problems/subsets/ Subsets - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 정수 목록이 주어졌을 때, 해당 원소들로 구성할 수 있는 유니크한 조합 목록을 반환하는 문제다. 2가지 풀이 방법이 있다. 1. Recursive (Backtracking) 흔히 트리에서 left node와 right node를 순차적으로 방문할 때 재귀적으로 방문하듯이 목록에서도 동일하게 방문한다. vector에서 push_ba..

141. Linked List Cycle

https://leetcode.com/problems/linked-list-cycle/ Linked List Cycle - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 포인터로 연결된 목록이 주어졌을 때, 구성하는 목록이 순회하는지 여부를 반환하는 문제다. 스스로 풀기 [C++] /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode(i..

83. Remove Duplicates from Sorted List

https://leetcode.com/problems/remove-duplicates-from-sorted-list/ Remove Duplicates from Sorted List - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com Node의 목록이 주어졌을 때 중복값을 제거한 리스트를 반환하는 문제다. [C++] /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *..

88. Merge Sorted Array

https://leetcode.com/problems/merge-sorted-array/ Merge Sorted Array - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com 정수 목록이 2개가 주어졌을 때, 0을 제외하고 두 목록을 합쳐 반환하는 문제다. [C++] class Solution { public: void merge(vector& nums1, int m, vector& nums2, int n) { int count = 0; nums1.resize(m..

320x100