본문 바로가기

전체 글248

[Leetcode]2574. Left and Right Sum Differences 문제 요약알고리즘 분류:  누적합, 수학난이도: Medium문제내용:수 배열 nums가 주어진다.leftSum[i]는 배열 nums에서 인덱스 i의 왼쪽에 있는 요소들의 합이다. 0번째 인덱스나 요소가 없으면 leftSum[i] = 0이다.rightSum[i]는 배열 nums에서 인덱스 i의 오른쪽에 있는 요소들의 합이다.n-1번째 인덱스나 요소가 없으면 rightSum[i] = 0이다.answer배열은 아래와 같이 정의한다.  answer를 반환 하여라 answer[i] = |leftSum[i] - rightSum[i]|사이트 주소: https://leetcode.com/problems/left-and-right-sum-differences/description/문제풀이 이번 문제는 완전탐색으로 풀면 .. 2025. 3. 24.
[알고리즘 이론] 큐(Queue) 이론 이본에 볼 자료구조는 큐이다. 스택은 FIFO 입선출인 자료구조이다. 즉 먼저들어간게 먼저 들어 온다는 뜻이다. 큐에 자세한 내용은 아래의 사이트에서 확인해라.https://namu.wiki/w/%ED%81%90(%EC%9E%90%EB%A3%8C%EA%B5%AC%EC%A1%B0) 큐(자료구조)파일:attachment/큐(자료구조)/queue.png 선입선출(先入先出/First In First Out—FIFnamu.wiki  Javascriptclass Queue{ constructor(){ this.items = []; this.start = 0; this.size = 0; } push(val){ this.items.push(val).. 2025. 3. 21.
[Leetcode]1379. Find a Corresponding Node of a Binary Tree in a Clone of That Tree 문제 요약알고리즘 분류: Tree, DFS, BFS난이도: Easy문제내용:cloned Tree에서  taget Node 것을 반환 하여라 사이트 주소: https://leetcode.com/problems/find-a-corresponding-node-of-a-binary-tree-in-a-clone-of-that-tree/description/문제풀이 이번 문제는 이진트리와 트리에 대한 탐색을 활용한 간단한 문제이다. 이번 문제는 트리 탐색중 깊이 우선 탐색으로 설명 할것이다.트라와 깊이 우선 탐색(DFS)에 대한 자세한 설명은 아래 글에서 확인 해보면 된다.트리: https://jih3508.tistory.com/87깊이 우선 탐색(DFS): https://jih3508.tistory.com/94넓.. 2025. 3. 21.
[Leetcode]452. Minimum Number of Arrows to Burst Balloons 문제 요약알고리즘 분류:  그리디, 정렬난이도: Medium문제내용:.벽에 붙어있는 풍선들은 [xstart, xend] 형태로 주어지며, x축에서 수직으로 화살을 쏴 터뜨릴 수 있습니다.한 번 발사된 화살은 무한히 위로 이동하며 경로 내 모든 풍선을 터뜨립니다. 모든 풍선을 터뜨리는 데 필요한 최소 화살 개수를 구하세요.사이트 주소: https://leetcode.com/problems/minimum-number-of-arrows-to-burst-balloons/description/문제풀이이번 문제는 완전탐색으로 풀면 O(N^2)나오지만 그러면 시간 초과가 나서 O(N^2)안되는 방법으로 끝내야 한다. 그래서 그리디로 간단하게 풀것이다. 그리디 관련 내용은 아래글로 참고 하면된다.https://jih3.. 2025. 3. 15.
[Leetcode]1442. Count Triplets That Can Form Two Arrays of Equal XOR 문제 요약알고리즘 분류:  구간합, 누적합, 수학난이도: Medium문제내용:정수 배열 arr에서 세 개의 인덱스 (i, j, k)를 선택해야 합니다.인덱스 조건: 0 ≤ i XOR 조건: arr[i]^arr[i+1]^...^arr[j−1]=arr[j]^arr[j+1]^...^arr[k]이때, 아래 조건을 만족해야 합니다.이러한 (i, j, k) 조합의 개수를 구하세요.사이트 주소: https://leetcode.com/problems/count-triplets-that-can-form-two-arrays-of-equal-xor/description/문제풀이이번 문제는 완전탐색으로 풀면 O(N^4)나오지만 그러면 시간 초과가 나서 O(N^3)으로 풀어야 되는 문제이다. 그래서 이번에는 누적합과 구간합을 .. 2025. 3. 8.
[Leetcode]670. Maximum Swaps 문제 요약알고리즘 분류:  구현, 브루드 포스, 그리디난이도: Medium문제내용:숫자 num이 주어지고 두개 숫자 변경 해서 최대 값을 구하여라사이트 주소: https://leetcode.com/problems/maximum-swap/문제풀이이번 문제는 숫자 2개만 바꿔서 그 중 최대 값만 반환 하기 때문에 어렵지 않다고 생각하낟. 그래서 아래 처럼 구현만 된다.숫자를 배열 또는 리스트로 만든다. 그리고 num값을 최대값으로 지정 한다.이중 for문 돌려서 i는 0 ~ 배열 크기 -1, j는 i + 1 ~ 배열 크기 만큼 돌린다.i, j 바꾸고난뒤 숫자로 변환 한뒤 이전 최대 값과 비교하여 그중 큰 값으로 저장 한다. 위 처럼 구현하면 시간 복잡도는 num의 자리수를 N이라고 볼면 O(N^2)만큼 나온.. 2025. 3. 1.