Leetcode

문제 https://leetcode.com/problems/maximum-number-of-vowels-in-a-substring-of-given-length/description/?envType=study-plan-v2&envId=leetcode-75 문자열 s과 정수가 주어 지면 길이가 있는 하위 문자열에서 모음 문자의 최대 개수를k 반환합니다 .sk 영어의 모음 글자'a' 는 , 'e', 'i', 'o', 입니다 'u'. 예시 1: 입력: s = "abciiidef", k = 3 출력: 3 설명: 하위 문자열 "iii"에는 3개의 모음 문자가 포함되어 있습니다. 예 2: 입력: s = "aeiou", k = 2 출력: 2 설명: 길이가 2인 하위 문자열에는 모음 2개가 포함됩니다. 예시 3: 입력:..
문제 https://leetcode.com/problems/house-robber/?envType=study-plan-v2&envId=leetcode-75 당신은 거리의 집을 털려는 전문 강도입니다. 각 집에는 일정 금액의 돈이 숨겨져 있습니다. 각각의 집에서 물건을 강탈하는 것을 막는 유일한 제약은 인접한 집에 보안 시스템이 연결되어 있고 같은 밤에 인접한 두 집에 침입한 경우 자동으로 경찰에 연락한다는 것입니다 . nums각 집의 금액을 나타내는 정수 배열이 주어지면 오늘 밤 경찰에 신고하지 않고 훔칠 수 있는 최대 금액을 반환하세요 . 예시 1: 입력: nums = [1,2,3,1] 출력: 4 설명: 1번 집(돈 = 1)을 털고 3번 집(돈 = 3)을 털었습니다. 도둑질할 수 있는 총 금액 = 1 ..
문제 https://leetcode.com/problems/min-cost-climbing-stairs/?envType=study-plan-v2&envId=leetcode-75 코드 class Solution { public int minCostClimbingStairs(int[] cost) { // i가 2부터인 이유는 제약조건 for(int i = 2; i < cost.length; i++){ // 두칸 아래와 한칸 아래 계단 중 더 값이 작은 계단을 밟으면 된다. // 그리고 밟은 계단의 비용을 더해준다. cost[i] = cost[i] + Math.min(cost[i-2], cost[i-1]); } // 배열 길이의 + 1 의 위치가 꼭대기라고 하면 꼭대기에서 한칸 아래와 두칸 아래 중 작은 값이..
문제 https://leetcode.com/problems/reverse-vowels-of-a-string/?envType=study-plan-v2&envId=leetcode-75 코드 class Solution { private Boolean isVowel(char c){ return c=='a' || c=='e' || c=='i' || c=='o' || c=='u' || c=='A' || c=='E' || c=='I' || c=='O' || c=='U'; } public String reverseVowels(String s) { // 스택 형식으로 모음을 담으면 뒤집어서 반환가능 Stack vowels = new Stack(); // 반환 문자열 생성시 필요한 StringBuilder객체 String..
문제 정수 배열이 주어지면 0이 아닌 요소의 상대적 순서를 유지하면서 모든 을 배열의 끝으로 nums이동합니다 .0 배열의 복사본을 만들지 않고 이 작업을 내부에서 수행해야 합니다 . 예시 1: 입력: 숫자 = [0,1,0,3,12] 출력: [1,3,12,0,0] 예시 2: 입력: 숫자 = [0] 출력: [0] 제약: 1
문제 단일 연결 리스트 의 경우 head, 홀수 인덱스를 가진 모든 노드를 그룹화한 다음 짝수 인덱스를 가진 노드를 그룹화하고 재정렬된 리스트를 반환합니다 . 첫 번째 노드는 홀수로 간주되고 두 번째 노드는 짝수로 간주됩니다. 짝수 그룹과 홀수 그룹 내부의 상대적 순서는 입력과 동일하게 유지되어야 합니다. O(1) 추가 공간 복잡도와 O(n)시간 복잡도 문제를 해결해야 합니다 . 예시 1: 입력: 헤드 = [1,2,3,4,5] 출력: [1,3,5,2,4] 예시 2: 입력: 헤드 = [2,1,3,5,6,4,7] 출력: [2,3,6,7,1,5,4] 제약: 연결된 목록의 노드 수는 범위 내에 있습니다 .[0, 104] -106
문제 이진 트리의 모든 리프를 왼쪽에서 오른쪽 순서로 고려하면 해당 리프의 값은 리프 값 시퀀스를 형성합니다 . 예를 들어, 위의 주어진 트리에서 리프 값 시퀀스는 입니다 (6, 7, 4, 9, 8). 두 개의 이진 트리는 리프 값 순서가 동일하면 리프 유사로 간주됩니다 . 헤드 노드가 있고 잎이 유사한 true두 개의 주어진 트리가 있는 경우에만 반환합니다 .root1root2 예시 1: 입력: root1 = [3,5,1,6,2,9,8,null,null,7,4], root2 = [3,5,1,6,7,4,2,null,null,null ,null,null,null,9,8] 출력: true 예시 2: 입력: root1 = [1,2,3], root2 = [1,3,2] 출력: false 제약: 각 트리의 노드 수..
문제 , , , 및 s문자만 포함된 문자열이 주어 지면 입력 문자열이 유효한지 확인합니다.'('')''{''}''['']' 다음과 같은 경우 입력 문자열이 유효합니다. 열린 괄호는 동일한 유형의 괄호로 닫혀야 합니다. 열린 괄호는 올바른 순서로 닫혀야 합니다. 모든 닫는 괄호에는 동일한 유형의 해당 열린 괄호가 있습니다. 예시 1: 입력: s = "()" 출력: true 예시 2: 입력: s = "()[]{}" 출력: true 예시 3: 입력: s = "(]" 출력: false 제약: 1
defxyj
'Leetcode' 태그의 글 목록