본문 바로가기

반응형

leetcode 문제 풀이

(5)
LeetCode 2181. Merge Nodes in Linked List 자바 문제 풀이 문제 설명문제: https://leetcode.com/problems/merge-nodes-in-between-zeros/설명: 주어진 단일 연결 리스트에서 특정 조건에 따라 노드를 합치는 작업을 수행해야 합니다.접근 방식아이디어:링크드리스트를 순회하면서 값이 0인지 확인합니다.값이 0이 아니면 더해서 저장해둡니다.값이 0인 노드를 찾으면, 지금까지 더한값을 가진 새로운 노드를 생성하고, 새로운 링크드리스트에 추가합니다.알고리즘:값이 0인 노드를 넣어둘 링크드리스트 resultNode를 생성합니다.나중에 리턴하기위해 더미헤드를 생성하여 resultNode에 연결해놓습니다.더한 값을 넣어둘 변수 addedVal을 생성합니다.주어진 링크드리스트를 순회합니다.노드의 값이 0이 아닌경우 값을 더합니다.노드의 값..
LeetCode 1509. Minimum Difference Between Largest and Smallest Value in Three Moves 자바 문제 풀이 문제 설명문제: https://leetcode.com/problems/minimum-difference-between-largest-and-smallest-value-in-three-moves/description설명: 정수 배열에서 최대 3개의 숫자를 제거하여 나머지 숫자들의 차이값(최대값 - 최소값)를 최소화해야 합니다.접근 방식아이디어:3개의 숫자를 제거하는 모든 경우의 수를 고려합니다.리스트가 4개 이하라면 변경된 숫자끼리 차이값을 만드는게 가능하므로, 차이값은 무조건 0입니다.리스트가 5개 이후부터 변경된 숫자를 제외한 두 숫자의 차이값이 가장 작습니다.차이값이 가장 큰 값은 가장 큰수와 가장 작은수이므로, 앞에서부터 3개의 숫자와 뒤에서부터 3개의 숫자를 확인하기위해 정렬합니다.3개의 숫자를 ..
LeetCode 2319. Check if Matrix Is X-Matrix 자바 문제 풀이 문제 설명문제: https://leetcode.com/problems/check-if-matrix-is-x-matrix/description/설명: 주어진 정사각형 행렬이 X-매트릭스인지 확인합니다. X-매트릭스는 주 대각선과 부 대각선을 제외한 모든 요소가 0인 행렬입니다.접근 방식아이디어: 각 요소가 X-매트릭스의 조건을 만족하는지 확인하기 위해 주 대각선과 부 대각선을 검사합니다.알고리즘: 주 대각선의 요소와 부 대각선의 요소를 제외한 모든 요소가 0인지 검사하여 X-매트릭스 여부를 판단합니다.코드class Solution { public boolean checkXMatrix(int[][] grid) { int n = grid.length; for (int i = 0;..
LeetCode 350. Intersection of Two Arrays II 자바 문제 풀이 문제 설명문제: https://leetcode.com/problems/intersection-of-two-arrays-ii/description설명: 두 개의 배열 nums1과 nums2에서 중복되는 숫자를 찾아내는 문제입니다.접근 방식아이디어: 각 배열의 숫자들을 HashMap을 사용하여 카운트하여 중복을 체크합니다. 이 문제의 함정은 각 배열에 중복되는 숫자가 존재할수 있다는 것입니다. 이미 정렬되어 있지 않다면, 두 포인터 를 이용해서 중복을 확인하는 방법은 비효율적입니다. 그러므로, 해시맵을 사용하여 중복숫자를 확인합니다알고리즘:먼저 nums1 배열의 각 숫자를 HashMap에 넣어 그 숫자의 출현 빈도를 카운트합니다.다음으로 nums2 배열을 순회하면서, 해당 숫자가 HashMap에 있는지 확인..
LeetCode 1550. Three Consecutive Odds 자바 문제 풀이 문제 설명문제: 주어진 정수 배열에서 연속적으로 나타나는 세 개의 홀수가 있는지 확인하세요. 만약 그런 경우가 존재한다면 true를 반환하고, 그렇지 않으면 false를 반환하세요.설명: 입력으로 주어진 정수 배열을 검사하여 연속적으로 나타나는 세 개의 홀수가 있는지 판단합니다. 배열 내의 각 숫자는 양수이며 배열의 길이는 최대 1000입니다.접근 방식아이디어: 배열을 순회하면서 각 요소가 홀수인지 검사하고, 연속적인 홀수의 개수를 셉니다. 연속된 홀수의 개수가 3이 되면 true를 반환하고, 그렇지 않으면 false를 반환합니다.알고리즘:배열을 순회하면서 각 요소가 홀수인지 확인합니다.홀수인 경우 연속된 홀수(count)의 개수를 증가시키고, 그렇지 않으면 개수를 초기화합니다.연속된 홀수(count)의..

반응형