728x90
반응형

릿코드 14

[JAVA][LeetCode] #217. Contains Duplicate | easy | HashMap | HashSet | Insertion sort

문제 / 예시 / 제한조건 겹치는 항목이 있는지 체크하는 방법 HashMap 을 이용class Solution { public boolean containsDuplicate(int[] nums) { HashMap map = new HashMap(); for(int num : nums) { if(map.containsKey(num)) return true; else map.put(num, true); } return false; }} 이렇게 풀었당Time Complexity : O(n)Space Complexity : O(n) 근데 Hash..

[JAVA][LeetCode][SlidingWindow|DP] #123. Best Time to Buy and Sell Stock III

문제 / 예시 / 제한조건 처음에 보고는 간단하게 생각했음. 122번 문제 푼 것에서 transcation 이 발생 할 때마다, 배열에 저장하고 가장 큰 수 2개를 뽑아서 더하면 되는 문제라고 생각함 예를 들어, 1 1 2 4 2 5 7 2 4 9 0 이렇게 있으면 buy 1 -> sell 4 : profit = 3 buy 2 -> sell 7 : profit = 5 buy 2 -> sell 9 : profit = 7 가 되고 가장 큰 두 수 7,5 를 더해서 12가 된다고 생각함. class Solution { public int maxProfit(int[] prices) { if(prices.length prices[sellTime + 1]) { savedProfit[savingIndex] = pri..

[LeetCode][Java] 111. Minimum Depth of Binary Tree

이번엔 진짜 혼자 풀었다!! 이제 recursive 알고리즘의 개미 발톱은 보이는 것 같다.! 문제 이번 문제는 root의 자식 노드 중 leaf 노드를 찾는 것! 여기서 leaf 노드란 ? 자식이 없는 노드를 뜻함.! 여기서 약간의 함정이 있다고 보는데,,.. 내가 생각하는 함정은 root의 자식이 없을 경우이다. 이것때문에.. 힘들었즤.. 하하 나의 오답 창피하지만.. 내 오답을 적어놔야 나중에 실수를 안하니깐! /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { this.val = v..

[LeetCode][Java] 110. Balanced Binary Tree

문제에 대한 오해가 있어서.. 역대급으로 틀려버렸다.. 역시 오해는 금물!! 문제 left와 right 높이 차이가 1보다 크게 나면 false, 아니면 true를 return 하는 문제! 근데 나는 여기서 root의 left , right 로 생각하면 되는 줄 알고.. 계속 root의 왼쪽과 오른쪽의 최대 높이를 구하고 그 두 개를 비교했다.. 나의 오답 /** * Definition for a binary tree node. * public class TreeNode { * int val; * TreeNode left; * TreeNode right; * TreeNode() {} * TreeNode(int val) { this.val = val; } * TreeNode(int val, TreeNode..

728x90
반응형