알고리즘/LeetCode32 [Leetcode][Javascript][Medium] 11. Container With Most Water https://leetcode.com/problems/container-with-most-water/ /** * @param {number[]} height * @return {number} */ var maxArea = function(height) { var p1 = 0, p2 = height.length - 1; var max = {area: 0, height: 0}; while(p1 !== p2) { var minHeight = Math.min(height[p1], height[p2]); var width = p2 - p1; if (minHeight > max.height) { var area = minHeight * width; if (max.area 2021. 7. 4. [Leetcode][Javascript][Easy] 9. Palindrome Number /** * https://leetcode.com/problems/palindrome-number/ * @param {number} x * @return {boolean} */ var isPalindrome = function(x) { if (x < 0) { return false; } if (x === Number.parseInt(x.toString().split("").reverse().join(""))) { return true; } else { return false; } }; 2021. 7. 4. [Leetcode][Javascript][Medium] 7. Reverse Integer /** * https://leetcode.com/problems/reverse-integer/ * @param {number} x * @return {number} */ var reverse = function(x) { var reverseNumArr = Math.abs(x).toString().split("").reverse(); var zeroRemovedArr = removeZero(reverseNumArr); if (x < 0) { zeroRemovedArr.unshift("-"); } var resultNum = zeroRemovedArr.join(""); if (rangeCheck(resultNum)) { return resultNum; } else { return 0; } }; functio.. 2021. 7. 4. [Leetcode][Javascript][Medium] 2. Add Two Numbers /** * https://leetcode.com/problems/add-two-numbers/ * * Definition for singly-linked list. * function ListNode(val, next) { * this.val = (val===undefined ? 0 : val) * this.next = (next===undefined ? null : next) * } */ /** * @param {ListNode} l1 * @param {ListNode} l2 * @return {ListNode} */ var addTwoNumbers = function(l1, l2) { var carry = 0; var n1 = l1, n2 = l2; var answerNode = new ListNod.. 2021. 7. 2. [Leetcode][Javascript][Easy] 1. Two Sum /** * @param {number[]} nums * @param {number} target * @return {number[]} */ var twoSum = function(nums, target) { var answer = []; var hashTable = nums.reduce((obj, num, idx) => { obj[num] = idx; return obj; }, {}); for(let i=0; i < nums.length; i++) { if (hashTable[target - nums[i]] !== undefined && hashTable[target - nums[i]] !== i) { answer.push(i, hashTable[target - nums[i]]); break; } } r.. 2021. 7. 1. [Leetcode][Javascript][Easy] 155. Min Stack https://leetcode.com/problems/min-stack/ Min Stack - LeetCode Level up your coding skills and quickly land a job. This is the best place to expand your knowledge and get prepared for your next interview. leetcode.com /** * initialize your data structure here. */ var MinStack = function() { this._value = []; this._sortedValue = []; }; /** * @param {number} val * @return {void} */ MinStack.prototy.. 2021. 6. 30. [Leetcode][Javascript][Easy] 20. Valid Parentheses /** * @param {string} s * @return {boolean} */ var isValid = function(s) { var stack = new Stack(); for (let i = 0; i < s.length; i++) { if (s[i] === '(' || s[i] === '[' || s[i] === '{') { stack.push(s[i]); } if (s[i] === ')') { if (stack.pop() !== '(') { return false; } } else if (s[i] === ']') { if (stack.pop() !== '[') { return false; } } else if (s[i] === '}') { if (stack.pop() !== '{') { re.. 2021. 6. 28. [Leetcode][Javascript][Easy] 70. Climbing Stairs https://leetcode.com/problems/climbing-stairs/ You are climbing a staircase. It takes n steps to reach the top. Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top? Example 1: Input: n = 2 Output: 2 Explanation: There are two ways to climb to the top. 1. 1 step + 1 step 2. 2 steps Example 2: Input: n = 3 Output: 3 Explanation: There are three ways to c.. 2021. 5. 16. 이전 1 2 3 다음