530. Minimum Absolute Difference in BST
이진 탐색 트리(Binary Search Tree, BST)의 루트 노드가 주어졌을 때, 트리 내의 어떤 두 다른 노드 값 사이의 최소 절대 차이를 반환하는 문제입니다. 예제: 예제 1: 입력으로 root = [4,2,6,1,3]이 주어지면, 출력은 1입니다. 예제 2: 입력으로 root = [1,0,48,null,null,12,49]이 주어지면, 출력은 1입니다. 제약 조건: 트리의 노드 수는 범위 [2, 10^4] 내에 있습니다. 0 오른쪽 자식 노드 순서로 노드를 방문합니다. 이 방법을 사용하면 이진 탐색 트리의 노드들이 오름차순으로 방문되므로, 각 노드와 이전 노드의 차이를 계산하여 최소 절대 차이를 찾습니다. 이진 탐색 트리 root = [4,2,6,1,3]에 대해 중위 순회를 실행하면 다음과 ..
2024. 4. 21.
162. Find Peak Element
어진 정수 배열에서 peak element를 찾는 문제입니다. Peak element는 해당 위치에서 좌우의 원소보다 큰 값을 갖는 원소를 의미합니다. 예를 들어, 배열 [1, 2, 3, 1]에서 3은 peak element입니다. 배열 [1, 2, 1, 3, 5, 6, 4]에서 6도 peak element입니다. 이 문제를 풀기 위한 일반적인 방법은 이진 검색(Binary Search)을 사용하는 것입니다. 이진 검색을 사용하면 O(log N)의 시간 복잡도로 peak element를 찾을 수 있습니다. public int FindPeakElement(int[] nums) { if (nums.Length == 0) { return -1; // 배열이 비어있는 경우 } // 배열의 길이가 1인 경우 if..
2023. 11. 16.