리트코드 - 35. Search Insert Position
리트코드 - 35. Search Insert Position CS/코딩테스트 2023. 10. 21. 19:55

리트코드 - 35. Search Insert Position 출처 - https://leetcode.com/problems/search-insert-position/description/?envType=study-plan-v2&envId=top-interview-150 문제 설명 중복되지 않는 정수로 이루어진 정렬된 배열과 목표 값이 주어질 때, 목표 값이 발견되면 해당 인덱스를 반환하고 발견되지 않으면 목표 값을 배열에 삽입하려면 어느 인덱스에 삽입해야 하는지 인덱스를 반환합니다. O(log n) 런타임 복잡도를 가지는 알고리즘을 작성해야 합니다. 의사코드 left = 0 right = nums.length - 1 mid = 0 반복문 시작 (left target) right = mid + 1 반복문 ..

리트코드 - 108. Convert Sorted Array to Binary Search Tree
리트코드 - 108. Convert Sorted Array to Binary Search Tree CS/코딩테스트 2023. 10. 18. 23:46

리트코드 - 108. Convert Sorted Array to Binary Search Tree 출처 - https://leetcode.com/problems/convert-sorted-array-to-binary-search-tree/description/?envType=study-plan-v2&envId=top-interview-150 문제 설명 주어진 정수 배열 nums가 오름차순으로 정렬되어 있을 때, 이 배열을 높이가 균형 잡힌 이진 검색 트리로 변환하세요. 의사코드 함수 sortedArrayToBST if (nums == null || nums.length == 0) null 리턴 sortedArrayToBST(nums, 0, nums.length - 1) 함수 sortedArrayToBST..

리트코드 - 637. Average of Levels in Binary Tree
리트코드 - 637. Average of Levels in Binary Tree CS/코딩테스트 2023. 10. 16. 22:36

리트코드 - 637. Average of Levels in Binary Tree 출처 - https://leetcode.com/problems/average-of-levels-in-binary-tree/description/?envType=study-plan-v2&envId=top-interview-150 문제 설명 주어진 이진 트리의 루트 노드를 기반으로, 각 레벨에서 노드의 평균값을 배열 형태로 반환하세요. 실제 정답과 10^-5 이내의 오차가 있는 답변은 허용됩니다. 의사코드 list = new ArrayList q = new LinkedList q.offer(root) 반복문 시작 (q가 비어있지 않으면) int size = q의 size double sum = 0 반복문 시작 (1부터 size까..

리트코드 - 222. Count Complete Tree Nodes
리트코드 - 222. Count Complete Tree Nodes CS/코딩테스트 2023. 10. 15. 16:31

리트코드 - 222. Count Complete Tree Nodes 출처 - https://leetcode.com/problems/count-complete-tree-nodes/description/?envType=study-plan-v2&envId=top-interview-150 문제 설명 완전한 이진 트리의 루트가 주어지면 트리의 노드 수를 반환합니다. Wikipedia에 따르면 마지막 레벨을 제외한 모든 레벨은 완전한 이진 트리로 완전히 채워지며 마지막 레벨의 모든 노드는 최대한 왼쪽에 있습니다. 마지막 레벨 h에 1~2h 노드가 포함될 수 있습니다. O(n) 시간 복잡도 미만으로 실행되는 알고리즘을 설계합니다. 의사코드 함수 countNodes if (root =null) 0 리턴 1 + coun..

리트코드 - 112. Path Sum
리트코드 - 112. Path Sum CS/코딩테스트 2023. 10. 13. 12:25

리트코드 - 112. Path Sum 출처 - https://leetcode.com/problems/path-sum/description/?envType=study-plan-v2&envId=top-interview-150 문제 설명 이진 트리의 root와 정수 targetSum이 주어지면, 경로를 따라 모든 값을 더하면 targetSum이 되는 루트-리프 경로가 트리에 있으면 true를 반환합니다. 리프는 자식이 없는 노드입니다. 의사코드 함수 hasPathSum(root, targetSum) if (root == null) false 리턴 if (root의 left == null && root의 right == null) targetSum - root의 val == 0 리턴 hasPathSum(root..

리트코드 - 101. Symmetric Tree
리트코드 - 101. Symmetric Tree CS/코딩테스트 2023. 10. 12. 18:31

리트코드 - 101. Symmetric Tree 출처 - https://leetcode.com/problems/symmetric-tree/?envType=study-plan-v2&envId=top-interview-150 문제 설명 이진 트리의 루트가 주어지면 그것이 자신의 거울인지(즉, 중심을 중심으로 대칭인지) 확인합니다. 의사코드 함수 isSymmetric if (root == null) true 리턴 isSymmetric(root의 left, root의 right) 함수끝 함수 isSymmetric(왼쪽노드,오른쪽 노드) 매개변수 두개로 오버로딩 if (leftNode == null && rightNode = null) true 리턴 if (둘중에 하나가 null인 경우) false 리턴 if (..

image