LeetCode题解
LeetCode题解,使用JavaScript解答
漂流瓶jz
Web前端开发,华东师范大学计算机硕士
展开
-
LeetCode力扣 171. Excel表列序号 Excel Sheet Column Number 题解代码 JavaScript
问题https://leetcode-cn.com/problems/excel-sheet-column-number/练习使用JavaScript解答/** * @param {string} s * @return {number} */var titleToNumber = function(s) { var i,sum = 0; for(i=0;i<s.length;++i) { sum *= 26; sum += s.ch.原创 2020-06-28 12:35:33 · 5109 阅读 · 1 评论 -
LeetCode力扣 169. 多数元素 Majority Element 题解代码 JavaScript
问题https://leetcode-cn.com/problems/excel-sheet-column-title/练习使用JavaScript解答/** * @param {number[]} nums * @return {number} */var majorityElement = function(nums) { var a = nums[0], n=1; for(var i=1;i<nums.length;++i) { if(nums.原创 2020-06-28 00:29:23 · 256 阅读 · 0 评论 -
LeetCode力扣 168. Excel表列名称 Excel Sheet Column Title 题解代码 JavaScript
问题https://leetcode-cn.com/problems/excel-sheet-column-title/练习使用JavaScript解答/** * @param {number} n * @return {string} */var convertToTitle = function(n) { var str = [], j; while(n>0) { --n; j = n % 26; str.push.原创 2020-06-26 18:23:31 · 285 阅读 · 0 评论 -
LeetCode力扣 167. 两数之和 II - 输入有序数组 Two Sum II - Input array is sorted 题解代码 JavaScript
问题https://leetcode-cn.com/problems/two-sum-ii-input-array-is-sorted/练习使用JavaScript解答/** * @param {number[]} numbers * @param {number} target * @return {number[]} */var twoSum = function(numbers, target) { var i = 0, j = numbers.length-1; .原创 2020-06-25 21:00:12 · 286 阅读 · 0 评论 -
LeetCode力扣 160. 相交链表 Intersection of Two Linked Lists 题解代码 JavaScript
问题https://leetcode-cn.com/problems/intersection-of-two-linked-lists/练习使用JavaScript解答/** * Definition for singly-linked list. * function ListNode(val) { * this.val = val; * this.next = null; * } *//** * @param {ListNode} headA * @par.原创 2020-06-24 11:51:05 · 221 阅读 · 0 评论 -
LeetCode力扣 155. 最小栈 Min Stack 题解代码 JavaScript
问题https://leetcode-cn.com/problems/min-stack/练习使用JavaScript解答/** * initialize your data structure here. */var MinStack = function() { this.stack = []; this.order = [];};/** * @param {number} x * @return {void} */MinStack.prototype..原创 2020-06-22 13:38:16 · 320 阅读 · 0 评论 -
LeetCode力扣 141. 环形链表 Linked List Cycle 题解代码 JavaScript
问题https://leetcode-cn.com/problems/valid-palindrome/练习使用JavaScript解答/** * Definition for singly-linked list. * function ListNode(val) { * this.val = val; * this.next = null; * } *//** * @param {ListNode} head * @return {boolean} */.原创 2020-06-21 18:31:15 · 249 阅读 · 0 评论 -
LeetCode力扣 125. 验证回文串 Valid Palindrome 题解代码 JavaScript
问题https://leetcode-cn.com/problems/valid-palindrome/练习使用JavaScript解答/** * @param {string} s * @return {boolean} */function judgeChar(c) { if(c >= '0' && c <= '9') return true; if(c >= 'a' && c <= 'z') .原创 2020-06-20 13:57:41 · 204 阅读 · 0 评论 -
LeetCode力扣 136. 只出现一次的数字 Single Number 题解代码 JavaScript
问题https://leetcode-cn.com/problems/single-number/练习使用JavaScript解答/** * @param {number[]} nums * @return {number} */var singleNumber = function(nums) { var a = 0, i; for(i=0;i<nums.length;++i) { a ^= nums[i]; } return a;.原创 2020-06-19 15:58:49 · 215 阅读 · 0 评论 -
LeetCode力扣 121. 买卖股票的最佳时机 Best Time to Buy and Sell Stock 题解代码 JavaScript
问题https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock/练习使用JavaScript解答/** * @param {number[]} prices * @return {number} */var maxProfit = function(prices) { if(prices.length < 2) return 0; var arr = []; arr[pr.原创 2020-06-17 21:08:50 · 236 阅读 · 0 评论 -
LeetCode力扣 119. 杨辉三角 II Pascals Triangle II 题解代码 JavaScript
问题https://leetcode-cn.com/problems/pascals-triangle-ii/练习使用JavaScript解答/** * @param {number} rowIndex * @return {number[]} */var getRow = function(rowIndex) { var arr = [1], t1, t2; for(var i=1;i<=rowIndex;++i) { t1 = 1; ..原创 2020-06-16 14:08:15 · 204 阅读 · 0 评论 -
LeetCode力扣 118. 杨辉三角 Pascal s Triangle 题解代码 JavaScript
问题https://leetcode-cn.com/problems/pascals-triangle/练习使用JavaScript解答/** * @param {number} numRows * @return {number[][]} */var generate = function(numRows) { if(numRows < 1) return []; var arrd = [[1]]; for(var i=1; i < .原创 2020-06-15 15:47:51 · 233 阅读 · 0 评论 -
LeetCode力扣 112. 路径总和 Path Sum 题解代码 JavaScript
问题https://leetcode-cn.com/problems/path-sum/练习使用JavaScript解答/** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; * this.left = this.right = null; * } *//** * @param {TreeNode} root * @param {number} s.原创 2020-06-14 12:49:51 · 199 阅读 · 0 评论 -
LeetCode力扣 111. 二叉树的最小深度 Minimum Depth of Binary Tree 题解代码 JavaScript
问题https://leetcode-cn.com/problems/minimum-depth-of-binary-tree/练习使用JavaScript解答/** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; * this.left = this.right = null; * } *//** * @param {TreeNode} root.原创 2020-06-13 13:10:27 · 191 阅读 · 0 评论 -
LeetCode力扣 110. 平衡二叉树 Balanced Binary Tree 题解代码 JavaScript
问题https://leetcode-cn.com/problems/balanced-binary-tree/练习使用JavaScript解答/** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; * this.left = this.right = null; * } *//** * @param {TreeNode} root * @retu.原创 2020-06-12 16:18:24 · 201 阅读 · 0 评论 -
LeetCode力扣 108. 将有序数组转换为二叉搜索树 Convert Sorted Array to Binary Search Tree 题解代码 JavaScript
问题https://leetcode-cn.com/problems/binary-tree-level-order-traversal-ii/练习使用JavaScript解答这个题目的答案并不唯一,因此和测试用例不同也没关系/** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; * this.left = this.right = null; * }.原创 2020-06-11 19:35:44 · 303 阅读 · 0 评论 -
LeetCode力扣 107. 二叉树的层次遍历 II Binary Tree Level Order Traversal II 题解代码 JavaScript
问题https://leetcode-cn.com/problems/binary-tree-level-order-traversal-ii/练习使用JavaScript解答/** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; * this.left = this.right = null; * } *//** * @param {TreeNod.原创 2020-06-10 22:21:36 · 224 阅读 · 0 评论 -
LeetCode力扣 104. 二叉树的最大深度 Maximum Depth of Binary Tree 题解代码 JavaScript
问题https://leetcode-cn.com/problems/maximum-depth-of-binary-tree/submissions/练习使用JavaScript解答/** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; * this.left = this.right = null; * } *//** * @param {Tre.原创 2020-06-09 13:23:48 · 293 阅读 · 0 评论 -
LeetCode力扣 101. 对称二叉树 Symmetric Tree 题解代码 JavaScript
https://leetcode-cn.com/problems/symmetric-tree//** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; * this.left = this.right = null; * } *//** * @param {TreeNode} root * @return {boolean} */function i原创 2020-06-08 13:58:39 · 213 阅读 · 0 评论 -
LeetCode力扣 100. 相同的树 Same Tree 题解代码 JavaScript
问题https://leetcode-cn.com/problems/same-tree/练习使用JavaScript解答/** * Definition for a binary tree node. * function TreeNode(val) { * this.val = val; * this.left = this.right = null; * } *//** * @param {TreeNode} p * @param {TreeNode} q.原创 2020-06-07 21:30:23 · 221 阅读 · 0 评论 -
LeetCode力扣 88. 合并两个有序数组 Merge Sorted Array 题解代码 JavaScript
问题https://leetcode-cn.com/problems/merge-sorted-array/练习使用JavaScript解答/** * @param {number[]} nums1 * @param {number} m * @param {number[]} nums2 * @param {number} n * @return {void} Do not return anything, modify nums1 in-place instead. */var.原创 2020-06-06 16:26:18 · 251 阅读 · 0 评论 -
LeetCode力扣 83. 删除排序链表中的重复元素 Remove Duplicates from Sorted List 题解代码 JavaScript
问题https://leetcode-cn.com/problems/remove-duplicates-from-sorted-list/练习使用JavaScript解答/** * Definition for singly-linked list. * function ListNode(val) { * this.val = val; * this.next = null; * } *//** * @param {ListNode} head * @ret.原创 2020-06-05 15:11:06 · 201 阅读 · 0 评论 -
LeetCode力扣 70. 爬楼梯 Climbing Stairs 题解代码 JavaScript
问题https://leetcode-cn.com/problems/climbing-stairs/练习使用JavaScript解答/** * @param {number} n * @return {number} */var climbStairs = function(n) { if(n == 1) return 1; var i, f1=1,f2=1,f3; for(i=2;i<=n;++i) { f3 = f1 +.原创 2020-06-04 07:30:58 · 259 阅读 · 0 评论 -
LeetCode力扣 69. x 的平方根 Sqrt(x) 题解代码 JavaScript
问题https://leetcode-cn.com/problems/sqrtx/练习使用JavaScript解答/** * @param {number} x * @return {number} */var mySqrt = function(x) { if(x>0 && x<4) return 1; var beg=0, end=Math.floor(x/2),mid; mid = Math.floor((b...原创 2020-06-03 15:27:58 · 285 阅读 · 0 评论 -
LeetCode力扣 67. 二进制求和 Add Binary 题解代码 JavaScript
问题https://leetcode-cn.com/problems/add-binary/练习使用JavaScript解答/** * @param {string} a * @param {string} b * @return {string} */var addBinary = function(a, b) { var s = ""; var ai,bi,ci=0,si = 0; var i, j; for(i = a.length-1, j = .原创 2020-06-02 15:17:43 · 267 阅读 · 0 评论 -
LeetCode力扣 66. 加一 Plus One 题解代码 JavaScript
https://leetcode-cn.com/problems/plus-one//** * @param {number[]} digits * @return {number[]} */var plusOne = function(digits) { var i,j; for(i=digits.length-1;i>=0;--i) { digits[i] += 1; if(digits[i] >= 10)原创 2020-06-01 14:51:11 · 290 阅读 · 0 评论 -
LeetCode力扣 58. 最后一个单词的长度 Length of Last Word 题解代码 JavaScript
https://leetcode-cn.com/problems/length-of-last-word//** * @param {string} s * @return {number} */var lengthOfLastWord = function(s) { var num = 0, i,j=0; for(i=0;i<s.length;++i) { if(s[i] == " ") { if(j != 0)原创 2020-05-31 16:46:52 · 230 阅读 · 0 评论 -
LeetCode力扣 53. 最大子序和 Maximum Subarray 题解代码 JavaScript
https://leetcode-cn.com/problems/maximum-subarray//** * @param {number[]} nums * @return {number} */var maxSubArray = function(nums) { var mV = nums[0]; var i,j,k = nums[0]; for(i=1;i<nums.length;++i) { if(k < 0)原创 2020-05-30 15:51:33 · 267 阅读 · 0 评论 -
LeetCode力扣 38. 外观数列 Count and Say 题解代码 JavaScript
https://leetcode-cn.com/problems/count-and-say//** * @param {number} n * @return {string} */var countAndSay = function(n) { var s = "1" ,i,j, str; var t1,ts; for(i=1;i<n;++i) { t1 = 1; ts = s[0]; str = "";原创 2020-05-29 17:02:45 · 318 阅读 · 0 评论 -
LeetCode力扣 35. 搜索插入位置 Search Insert Position 题解代码 JavaScript
问题https://leetcode-cn.com/problems/search-insert-position/练习使用JavaScript解答/** * @param {number[]} nums * @param {number} target * @return {number} */var searchInsert = function(nums, target) { var beg=0, end=nums.length-1, mid; if(target.原创 2020-05-28 13:16:17 · 236 阅读 · 0 评论 -
LeetCode力扣 28. 实现 strStr() Implement strStr() 题解代码 JavaScript
问题https://leetcode-cn.com/problems/implement-strstr/练习使用JavaScript解答/** * @param {string} haystack * @param {string} needle * @return {number} */var strStr = function(haystack, needle) { return haystack.indexOf(needle);};题目是让实现,直接用库好像不太合适.原创 2020-05-26 14:57:59 · 218 阅读 · 0 评论 -
LeetCode力扣 27. 移除元素 Remove Element 题解代码 JavaScript
问题https://leetcode-cn.com/problems/remove-element/练习使用JavaScript解答/** * @param {number[]} nums * @param {number} val * @return {number} */var removeElement = function(nums, val) { var i,j; for(i=0,j=0;i<nums.length;++i) if(num.原创 2020-05-25 13:17:30 · 248 阅读 · 0 评论 -
LeetCode力扣 14. 最长公共前缀 Longest Common Prefix 题解代码 JavaScript
问题https://leetcode-cn.com/problems/longest-common-prefix/练习使用JavaScript解答其中字符串我手动转换为了String对象。按道理应该是解释器自动转换的,而且在LeetCode上执行测试用例的时候也可以正常自动转换,但是提交后就报错,于是手动转换了。/** * @param {string[]} strs * @return {string} */var longestCommonPrefix = function(st.原创 2020-05-21 19:50:44 · 201 阅读 · 0 评论 -
LeetCode力扣 26. 删除排序数组中的重复项 Remove Duplicates from Sorted Array 题解代码 JavaScript
问题https://leetcode-cn.com/problems/remove-duplicates-from-sorted-array/练习使用JavaScript解答/** * @param {number[]} nums * @return {number} */var removeDuplicates = function(nums) { nums.sort(function(a,b){return a-b;}); var i,j,k; for(i=1.原创 2020-05-24 15:01:40 · 255 阅读 · 0 评论 -
LeetCode力扣 21. 合并两个有序链表 Merge Two Sorted Lists 题解代码 JavaScript
问题https://leetcode-cn.com/problems/merge-two-sorted-lists/练习使用JavaScript解答/** * Definition for singly-linked list. * function ListNode(val) { * this.val = val; * this.next = null; * } *//** * @param {ListNode} l1 * @param {ListNode} .原创 2020-05-23 15:57:35 · 283 阅读 · 0 评论 -
LeetCode力扣 13. 罗马数字转整数 Roman to Integer 题解代码 JavaScript
问题https://leetcode-cn.com/problems/roman-to-integer/练习使用JavaScript解答/** * @param {string} s * @return {number} */var romanToInt = function(s) { var stu = { 'I':1, 'V':5, 'X':10, 'L':50, 'C':100, .原创 2020-05-20 20:48:46 · 202 阅读 · 0 评论 -
LeetCode力扣 9. 回文数 Palindrome Number 题解代码 JavaScript
问题https://leetcode-cn.com/problems/palindrome-number/练习使用JavaScript解答/** * @param {number} x * @return {boolean} */var isPalindrome = function(x) { if(x < 0) return false; var b = x, c = 0; while(b != 0) { c = c*10原创 2020-05-17 22:57:27 · 226 阅读 · 0 评论 -
LeetCode力扣 7. 整数反转 Reverse Integer 题解代码 JavaScript
问题https://leetcode-cn.com/problems/reverse-integer/练习使用JavaScript解答/** * @param {number} x * @return {number} */var reverse = function(x) { var flag = (x < 0) ? true : false; x = (x < 0) ? -x : x; var a = 0; while(x > 0)原创 2020-05-16 21:44:21 · 333 阅读 · 1 评论 -
LeetCode力扣 1. 两数之和 Two Sum 题解代码 JavaScript
问题https://leetcode-cn.com/problems/two-sum/练习使用JavaScript解答/** * @param {number[]} nums * @param {number} target * @return {number[]} */var twoSum = function(nums, target) { var i, j = nums.length-1, sum; var num2 = []; for(i=0;i<原创 2020-05-15 21:59:08 · 249 阅读 · 0 评论