본문 바로가기

알고리즘/leetcode16

[Leetcode/C#] 637. Average of Levels in Binary Tree 문제링크 https://leetcode.com/problems/average-of-levels-in-binary-tree/?envType=study-plan-v2&envId=top-interview-150 637. Average of Levels in Binary Tree  기억하면 좋을 것  public class Solution { Queue queue = new Queue(); List result = new List(); int sumInSameLevel = 0; int cntInSameLevel = 0; public IList AverageOfLevels(TreeNode root) { queue.Enqueue(root); traverse(.. 2024. 8. 17.
[Leetcode/C#] 530. Minimum Absolute Difference in BST 문제링크  https://leetcode.com/problems/minimum-absolute-difference-in-bst/?envType=study-plan-v2&envId=top-interview-150   530. Minimum Absolute Difference in BST   기억하면 좋을 것 내가 풀고싶은대로 풀었더니 Time Limit Exceeded  에러가 난다. O(n^2)내가 푼 코드 /** * Definition for a binary tree node. * public class TreeNode { * public int val; * public TreeNode left; * public TreeNode right; * public TreeNode(.. 2024. 8. 17.
[LeetCode/C#] 374. Guess Number Higher or Lower 문제링크  374. Guess Number Higher or Lower  https://leetcode.com/problems/guess-number-higher-or-lower/description/  기억하면 좋을 것 1. 중간값을 구할때 var mid = left - (right - left) / 2 를 하면 오버플로우를 피할 수 있다. 물론 중간값을 left + right / 2 로 구할 수 있다. 그러나 컴퓨터가 32비트 정수를 사용한다면 표현할 수 있는 가장 큰 수는 2^32 로 left + right 했을 때 그 값을 초과할 수 있기때문에 중간값을 구할때 저 식을 많이 쓴다고한다.  2. 32비트 정수에서 첫번째 비트는 부호비트. 나머지 31비트는 수를 표현하는데 사용된다. 따라서 부호있는 .. 2024. 5. 4.
[LeetCode/MSSQL] 262. Trips and Users 문제링크 262. Trips and Users https://leetcode.com/problems/trips-and-users/description/ 기억하면 좋을 것 select request_at day ,round(sum(case when status = 'cancelled_by_driver' or status = 'cancelled_by_client' then 1 else 0 end) / (count(id) * 1.00),2) 'Cancellation Rate' from Trips t where request_at between '2013-10-01' and '2013-10-03' and client_id in (select users_id from Users where banned = 'No'.. 2024. 4. 6.