내림차순으로 정렬된 두 개의 정수 배열 nums1과 nums2가 주어지며, 각각 nums1과 nums2에 있는 요소의 수를 나타내는 두 개의 정수 m과 n이 주어집니다. nums1과 nums2를 감소하지 않는 순서로 정렬된 단일 배열로 병합합니다.최종 정렬된 배열은 함
1. 문제 27. Remove ElementEasyGiven an integer array nums and an integer val, remove all occurrences of val in nums in-place. The order of the elements
정수 배열의 숫자가 감소하지 않는 순서로 정렬되어 있을 때, 각 고유 요소가 한 번만 나타나도록 중복된 요소를 제자리에서 제거합니다. 요소의 상대적 순서는 동일하게 유지해야 합니다. 그런 다음 고유 요소의 수를 nums로 반환합니다.숫자의 고유 요소 수를 k라고 가정하
정수 배열의 숫자가 감소하지 않는 순서로 정렬되어 있을 때, 각 고유 요소가 최대 두 번만 나타나도록 중복된 부분을 제자리에서 제거합니다. 요소의 상대적 순서는 동일하게 유지해야 합니다.일부 언어에서는 배열의 길이를 변경할 수 없으므로 대신 결과를 배열 nums의 첫
대다수 원소는 ⌊n / 2⌋ 이상 나타나는 원소이다. 대다수 요소가 항상 배열에 존재한다고 가정할 수 있습니다.메이저한 원소를 찾아야 한다. 여기서 메이저한 원소는 배열의 절반 이상 존재하는 수이다. 어떻게 접근해야 할지 몰라서 여러 알고리즘을 찾아보다가 과분수 득표
정수 배열 번호가 지정되면 배열을 k 단계만큼 오른쪽으로 회전합니다. 여기서 k는 음수가 아닙니다.문제의 제목처럼 순환하는 배열로 만들고자 했지만 한칸씩 이동하게 되는 코드는 시간복잡도가 많이 나오거나 재귀함수를 이용해야 할 거 같아서 최대한 단순하게 생각해보았다.k의
가격i이 있는 배열 가격은 i일에 주어진 주식의 가격입니다.한 주식을 매수하기 위해 하루를 선택하고 해당 주식을 매도하기 위해 미래의 다른 날을 선택함으로써 수익을 극대화하려고 합니다이 거래에서 얻을 수 있는 최대 수익을 반환합니다. 이익을 얻을 수 없는 경우 0을 반
가격 배열 가격이 주어지며, 가격i는 해당 날짜에 지정된 주식의 가격입니다.매일 주식을 매수 및/또는 매도할 수 있습니다. 한 번에 최대 한 종목의 주식만 보유할 수 있습니다. 그러나 매수한 후 같은 날 즉시 매도할 수 있습니다.달성할 수 있는 최대 수익을 찾아서 반환
정수 배열의 개수가 주어집니다. 처음에는 배열의 첫 번째 인덱스에 위치하게 되며, 배열의 각 요소는 해당 위치에서 최대 점프 길이를 나타냅니다.마지막 인덱스에 도달할 수 있으면 true을 반환하고, 그렇지 않으면 false을 반환합니다.입력: nums = 2,3,1,
모든 대문자를 소문자로 변환하고 영숫자가 아닌 문자를 모두 제거한 후 앞뒤가 같은 경우 구문은 팔린드롬입니다. 영숫자 문자에는 문자와 숫자가 포함됩니다.문자열 s가 주어지면 팔린드롬이면 true을 반환하고, 그렇지 않으면 false을 반환합니다투 포인터를 이용해서 첫번
이미 감소하지 않는 순서로 정렬된 정수의 1 인덱스 배열이 주어졌을 때, 특정 목표 수에 합산되는 두 개의 수를 구합니다. 이 두 숫자를 numbersindex1 및 numbersindex2로 하고, 1 <= index1 < index2 < number
양의 정수 숫자와 양의 정수 목표의 배열이 주어지면, a의 최소 길이를 반환한다.subarray 총합이 목표보다 크거나 같다. 이러한 하위 배열이 없으면 대신 0을 반환합니다subarray는 배열 내의 요소들의 연속적인 비어있지 않은 시퀀스이다.입력: target =
문자열 s가 주어졌을 때, 가장 긴 문자열의 길이를 구합니다.하위 문자열의 길이를 구합니다.하위 문자열은 문자열 내에 비어 있지 않은 연속 문자 시퀀스입니다.입력: s = "abcabcbb"출력: 3설명: 답은 길이가 3인 "abc"입니다.입력: s = "pwwkew"
링크된 목록의 머리인 head가 주어지면 링크된 목록에 사이클이 있는지 확인합니다.다음 포인터를 계속 따라가면 다시 도달할 수 있는 노드가 목록에 있는 경우 연결된 목록에 사이클이 있습니다. 내부적으로 pos는 꼬리의 다음 포인터가 연결된 노드의 인덱스를 나타내는 데
음수가 아닌 정수 두 개를 나타내는 비어 있지 않은 링크된 목록 두 개가 주어집니다. 숫자는 역순으로 저장되며 각 노드에는 단일 숫자가 포함됩니다. 두 숫자를 더하고 그 합을 연결된 목록으로 반환합니다.두 숫자에는 숫자 0을 제외하고 선행 0이 포함되지 않는다고 가정할
고유 정수의 정렬된 배열과 목표 값이 주어졌을 때, 목표가 발견되면 인덱스를 반환합니다. 그렇지 않은 경우, 순서대로 삽입했을 때 인덱스가 있을 위치를 반환합니다.런타임 복잡도가 O(log n)인 알고리즘을 작성해야 합니다.Example 1:Input: nums = 1
push, pop, top, minimum element 검색을 일정 시간 내에 지원하는 stackj을 설계하세요.MinStack 클래스를 구현합니다:MinStack()은 스택 객체를 초기화합니다.void push(int val)는 요소 val을 스택에 밀어 넣습니다
정수 숫자 배열과 정수 타깃이 주어졌을 때, 두 숫자의 인덱스가 타깃에 합산되도록 반환합니다.각 입력에 정확히 하나의 해가 있다고 가정할 수 있으며, 같은 요소를 두 번 사용할 수 없습니다.어떤 순서로든 답을 반환할 수 있습니다.Follwo-up : 시간 복잡도가 O(
정수 배열 nums와 정수 k가 주어졌을 때, 배열에 두 개의 서로 다른 인덱스 i와 j가 있어 nums\[i] == nums\[j], abs(i - j) <= k이면 true를 반환합니다.Example 1:Input: nums = 1,2,3,1, k = 3Out
두 문자열 s와 t가 주어지면 t가 s의 애너그램이면 참을 반환하고, 그렇지 않으면 거짓을 반환합니다.애너그램은 다른 단어나 구의 글자를 재배열하여 만든 단어 또는 구문으로, 일반적으로 원래 글자를 모두 정확히 한 번 사용합니다.Example 1:Input: s = "

오름차순으로 정렬된 정수 배열 번호(별도의 값)가 있습니다.함수로 전달되기 전에 nums는 알 수 없는 피벗 인덱스 k(1 < = k < nums.length)에서 회전하여 배열이 nums\[k], nums\[k+1], ..., nums\[n-1], nums
이진 검색 트리(BST)의 root가 주어졌을 때, 트리에 있는 서로 다른 두 노드의 값 사이의 최소 절대 차이를 반환합니다.Example 1:imageInput: root = 4,2,6,1,3Output: 1Example 2:imageInput: root = 1,0,
이진 검색 트리(BST)의 root가 주어졌을 때, 트리에 있는 서로 다른 두 노드의 값 사이의 최소 절대 차이를 반환합니다.Example 1:imageInput: root = 4,2,6,1,3Output: 1Example 2:imageInput: root = 1,0,
문제이진 검색 트리의 root와 정수 k가 주어졌을 때, 트리에 있는 모든 노드의 값 중 가장 작은 값(1-색인된)을 반환합니다.BST는 inorder로 순회하면 오름차순으로 탐색할 수 있습니다.모든 데이터를 List에 담아서 k번째의 값을 리턴하는 방법도 있지만, k
연결된 방향이 없는 그래프에서 노드의 참조가 주어집니다.그래프의 딥 카피(복제본)를 반환합니다.그래프의 각 노드는 값(int)과 이웃 노드의 목록(ListNode)을 포함합니다.테스트 케이스 형식:간단하게 하기 위해 각 노드의 값은 노드의 인덱스(1-인덱스)와 동일합니