https://leetcode.com/problems/remove-duplicates-from-sorted-array-ii정수 배열 nums가 제공된다. 배열은 오름차순 정렬되어있다.동일한 숫자는 최대 두 번까지 나올 수 있다.두 번 이상 나올 수 없다.원본
https://leetcode.com/problems/jump-game정수 배열 nums가 제공된다. 배열은 오름차순 정렬되어있다.중복을 제거해라.nums 배열을 수정nums 배열의 인덱스 k-1 이후는 검사하지 않는다.nums 배열을 검사하며 동시에 nums
https://leetcode.com/problems/jump-game정수 배열 nums가 제공된다. 배열의 각 원소는 해당 위치에서 최대 점프할 수 있는 길이이다.인덱스 + 원소 = 최대 이동 가능한 인덱스마지막 인덱스에 도달할 수 있는가? 케이스 비교
https://leetcode.com/problems/majority-element정수 배열 nums와 배열의 크기 n이 주어진다.이 중 배열의 n / 2를 넘게 차지하는 원소를 찾아라2,2,1,1,1,2,2 와 같이 배열이 주어졌을 때를 생각해보자.원소가 2
https://leetcode.com/problems/remove-element정수 배열 nums와 정수 val이 주어진다.nums에서 val을 제거하고, val이 제거된 nums 배열의 길이 k를 반환해라.nums 배열을 수정nums 배열의 인덱스 k-1 이
https://leetcode.com/problems/best-time-to-buy-and-sell-stock/i번째 날짜에 대한 주가가 배열로 주어진다.최대 이익을 찾아라.매수일은 항상 매도일보다 앞선다.이익을 얻을 수 없다면 0을 리턴해라.매도 구간을 찾자
https://leetcode.com/problems/best-time-to-buy-and-sell-stock-ii/i번째 날짜에 대한 주가가 배열로 주어진다.최대 이익을 찾아라.이익이 누적된다.매수 이후 매도가 된 후 다음 매수가 이루어질 수 있다. \-
https://leetcode.com/problems/rotate-array배열을 k번 오른쪽으로 회전해라배열길이=7, k=3 일때 인덱스 이동k를 더하자0번 ➡️ 3번1번 ➡️ 4번2번 ➡️ 5번3번 ➡️ 6번4번 ➡️ 7번5번 ➡️ 8번6번 ➡️ 9번배열길
https://leetcode.com/problems/merge-sorted-array오름차순 정렬된 배열 nums1과 길이 m, nums2와 그 길이 n이 주어진다.nums1 배열의 길이는 m+n 이며, 이중 n은 0으로 패딩되어 있다.nums1에 nums2
https://leetcode.com/problems/two-sum-ii-input-array-is-sorted오름차순 정렬된 배열 numbers가 주어진다.numbersindex1 + numbersindex2 = target 인 index1과 index2를
https://leetcode.com/problems/valid-palindrome주어지는 문자열이 회문인지 판단해라영어, 숫자가 아닌 모든 문자는 무시한다.대소문자 구분 안함회문은 뒤에서부터 읽는 것과 앞에서부터 읽는 것과 동일하다.➡️ 포인터를 앞 뒤로 둬
https://leetcode.com/problems/minimum-size-subarray-sum양수 배열 nums가 주어진다.요소 합이 target 이상인 subArray의 최소 사이즈를 찾아라특정 조건을 만족하는 배열의 구간 (subArray) 을 찾아야
https://leetcode.com/problems/longest-substring-without-repeating-characters/문자열 s가 주어진다.하위 문자열이 반복되지 않는 substring 의 최대 길이를 찾아라.substring 에는 동일한
https://leetcode.com/problems/linked-list-cycle어떤 링크드 리스트의 head 노드가 주어진다.이 링크드 리스트에 순환이 있는지 확인해라링크드 리스트의 다음 노드는 노드 별로 유일하게 가지고 있는 값이다.➡️ 다음 노드는 일
https://leetcode.com/problems/add-two-numbers/두개의 링크드 리스트가 주어진다.두 개의 링크드 리스트는 길이가 다를 수 있다.길이가 다르다면, 자릿수가 다른 경우라고 생각하면 된다.두개의 링크드 리스트를 더하기 연산해라.각
https://leetcode.com/problems/search-insert-position오름차순 배열과 target이 주어진다.target이 배열에 있으면 해당 인덱스를 반환하고, 그렇지 않은 경우 삽입될 인덱스를 반환해라시간복잡도는 O(nlog(n))
https://leetcode.com/problems/search-a-2d-matrix2차원 오름차순 배열과 target이 주어진다.target이 배열에 있으면 해당 인덱스를 반환하고, 그렇지 않은 경우 삽입될 인덱스를 반환해라시간복잡도는 O(log(m \*
https://leetcode.com/problems/min-stack최소값을 반환하는 스택을 구현하기input 코드 예시push() pop() top() getMin() 메소드를 가진 클래스 구현모든 메서드의 시간복잡도는 O(1)스택은 Last In Firs
https://leetcode.com/problems/evaluate-reverse-polish-notation/후위 표기법으로 표현된 배열을 계산하라4, 13, 5, /, +1) 3번 인덱스 '/'와 2번 인덱스, 1번 인덱스가 연산에 참여한다.2) 그 결과
https://leetcode.com/problems/two-sum숫자 배열이 주어진다.합해서 target 이 되는 인덱스 두 개를 찾아라.인덱스는 무조건 한 쌍이 있다.numsi + x = target➡️ x = target - numsi 이므로 target
https://leetcode.com/problems/contains-duplicate-ii/정수 배열 nums\[] 와 정수 k가 주어진다.간격 k 이내에 중복된 정수가 있는지 확인해라.abs(i - j) <= k어떤 숫자가 특정 인덱스 범위 내에 있는
https://leetcode.com/problems/minimum-absolute-difference-in-bst이진 검색 트리의 root 노드가 주어진다.노드의 개수는 최소 두개두 노드 간의 최소 차이를 구해라.이진 검색 트리는 각 부모 노드로부터 왼쪽에
https://leetcode.com/problems/kth-smallest-element-in-a-bst이진 검색 트리의 root 노드와 정수 k 가 주어진다.노드의 개수는 한 개k번째 최소값을 구하라.이진 검색 트리는 모든 하위 트리가 왼쪽 노드의 값 &l
https://leetcode.com/problems/average-of-levels-in-binary-tree이진 트리의 root 노드가 주어진다.노드의 개수는 최소 한개동일 레벨 노드 사이의 평균값을 구하라.동일 레벨 노드 간의 값을 연산해야 한다.서브 트
https://leetcode.com/problems/binary-tree-right-side-view이진 트리의 root 노드가 주어진다.노드의 개수는 0개에서 100개이진 트리를 오른쪽에서 바라봤을 때 볼 수 있는 노드를 구해라특정 뎁스의 최우측에 위치한
https://leetcode.com/problems/implement-trie-prefix-treeTrie를 구현하기input 코드 예시search() startsWith() insert() 메소드를 가진 트라이 구현모든 문자는 영문이며, 소문자로 주어진다.
https://leetcode.com/problems/clone-graph/?envType=study-plan-v2&envId=top-interview-150무방향 그래프의 노드가 주어진다.모든 노드가 가진 val은 노드의 인덱스와 동일하다.노드의 개수는 0개
https://leetcode.com/problems/snakes-and-ladders정사각 테이블이 주어진다.모든 노드가 가진 val은 노드의 인덱스와 동일하다.n-1 컬럼이 1번 컬럼이고, n^2번 컬럼은 Boustrophedon 규칙에 의한 컬럼이다.1번