전체 글
-
[LeetCode] Sudoku Solver (Java)IT/Problem Solving 2024. 2. 23. 22:59
문제 문제풀이 1. 무지성 For문 - 일단 스도쿠 판의 배열이 9*9로 정해져 있고, 하나의 solution만 있는 것이 보장되기 때문에, 무지성 반복문을 계속 돌려서 값을 넣어보는 방식을 채택했다. class Solution { public void solveSudoku(char[][] board) { solve(board); } private boolean solve(char[][] board) { for (int i = 0; i < board.length; i++) { for (int j = 0; j < board.length; j++) { if (board[i][j] == '.') { for (char c = '1'; c
-
[LeetCode] Trapping Rain Water (Java)IT/Problem Solving 2024. 2. 21. 23:57
문제 문제풀이 1. 두 번 계산해주자 - DP로 풀었다. - 두 가지 경우를 나누어 앞에서 부터 탐색했을 때와 뒤에서부터 탐색했을 때를 모두 계산해줬다. 처음에 기준 높이를 가지고 앞에서 부터 탐색할 때 기준 높이보다 높거나 같은 막대를 만나지 못하면 계산이 안된다. 따라서 뒤에서 부터도 똑같은 방식으로 탐색을 해주고, DP배열을 한 번 더 돌아서 각 위치에서 더 낮은 값을 결과값으로 더해줬다. class Solution { public int trap(int[] height) { int currHeight = height[0]; int[][] dp = new int[2][height.length]; dp[0][0] = 0; dp[1][height.length - 1] = 0; for (int i = 1..
-
[LeetCode] Median of Two Sorted Arrays (Java)IT/Problem Solving 2024. 2. 4. 20:54
문제 문제풀이 감을 못 잡겠어서 이건 힌트를 보고 풀었다! 사실 이진탐색만 알면 간단하게 풀리는 문제인데, 개념을 매번 까먹었다가 아래 유튜브 영상을 보고 완벽하게 이해할 수 있었다. 구우우웃-! class Solution { public double findMedianSortedArrays(int[] nums1, int[] nums2) { if (nums1.length > nums2.length) { return findMedianSortedArrays(nums2, nums1); } // binary search int partitionLen = (nums1.length + nums2.length + 1) / 2; boolean isEven = (nums1.length + nums2.length) % ..
-
[LeetCode] Container With Most Water (Java)IT/Problem Solving 2024. 2. 4. 14:53
문제 문제풀이 과정 그리디하게 풀기엔 범위가 커서 시간초과가 날 게 분명하여 투 포인터를 이용하기로 앞쪽을 가리키는 포인터 하나와 뒤를 가리키는 포인터를 하나씩 가지고, 자기보다 큰 높이를 가진 벽을 만났을 때만 넓이를 다시 구하고 max값을 찾도록 했다. (자기보다 작은 높이를 가진 벽은 계산하나마나 넓이도 작을 것이므로) class Solution { public int maxArea(int[] height) { int st = 0; // start index int ed = height.length - 1; // end index int leftLen = height[st]; // current left length int rightLen = height[ed]; // current right le..
-
[DB] Stored Procedure in 3-tier architecture : pros and consDB/DB Basic 2024. 1. 22. 23:33
3-Tier Architecture 1. Presentation Layer (User Interface) - Topmost layer that is responsible for interacting with end-users (e.g. web pages, mobile apps, etc.) - To present information to users and gather user input(forwards user requests to the next layer) 2. Business Logic Layer (Application Layer) - Processes the user input received from the presentation layer and coordinates the applicatio..
-
[MySQL] Stored ProcedureDB/MySQL 2024. 1. 22. 12:51
Stored Procedure - A set of SQL statements that are stored on the server and can be executed as a single unit - Precompiled and stored in the database, allowing for improved performance and code reusability Procedure Declaration - A stored procedure is defined using the 'CREATE PROCEURE' statement - Includes the procedure name, parameters(if any), and the body of the procedure /* Basic sysntax *..
-
[MySQL] Stored FunctionDB/MySQL 2024. 1. 21. 22:20
Stored Function - A set of SQL statements that perform a specific task and return a single value - Allow to encapsulate a series of SQL statements into a reusable and modular unit DELIMITER // -- change DELIMITER ";" to "//" temporarily CREATE FUNCTION calculate_area(length DOUBLE, width DOUBLE) RETURNS DOUBLE BEGIN DECLARE area DOUBLE; SET area = length * width; RETURN area; END // DELIMITER ; ..
-
[AWS DVA] 2. EC2AWS/DVA 2024. 1. 7. 16:35
Amazon EC2 - Basics 1. Amazon EC2 (Elastic Compute Cloud) - Infrastructure as a service [Capabilities] 1) Renting virtual machines (EC2) 2) Storing data on virtual drives (EBS) 3) Distributing load across machines (ELB) 4) Scaling the services using an auto-scaling group (ASG) 2. EC2 User Data Script - Possible to bootstrap instances using an EC2 User Data Script - Bootstrapping : Launching comm..