leetcode
API搬运工
进击的前端
展开
-
908 最小差值I javascript
给定一个整数数组 A,对于每个整数 A[i],我们可以选择任意 x 满足 -K <= x <= K,并将 x 加到 A[i] 中。在此过程之后,我们得到一些数组 B。返回 B 的最大值和 B 的最小值之间可能存在的最小差值。 示例 1:输入:A = [1], K = 0输出:0解释:B = [1]示例 2:输入:A = [0,10], K = 2...原创 2018-11-16 11:27:38 · 140 阅读 · 0 评论 -
leetcode: 671 合并二叉树 javascript
给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。示例 1:输入: Tree 1 Tree 2 ...原创 2018-07-26 18:40:45 · 307 阅读 · 0 评论 -
566. leetcode 重塑矩阵 javascript
在MATLAB中,有一个非常有用的函数 reshape,它可以将一个矩阵重塑为另一个大小不同的新矩阵,但保留其原始数据。给出一个由二维数组表示的矩阵,以及两个正整数r和c,分别表示想要的重构的矩阵的行数和列数。重构后的矩阵需要将原始矩阵的所有元素以相同的行遍历顺序填充。如果具有给定参数的reshape操作是可行且合理的,则输出新的重塑矩阵;否则,输出原始矩阵。示例 1:输入:...原创 2018-08-02 17:00:06 · 150 阅读 · 0 评论 -
867 leetcode 转置矩阵 javascript
给定一个矩阵 A, 返回 A 的转置矩阵。矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。输入:[[1,2,3],[4,5,6],[7,8,9]]输出:[[1,4,7],[2,5,8],[3,6,9]]/** * @param {number[][]} A * @return {number[][]} */var transpose = function(A...原创 2018-08-01 11:47:55 · 220 阅读 · 0 评论 -
167 两数之和II 输入有序数组 leetcode javascript
/** * @param {number[]} numbers * @param {number} target * @return {number[]} */var twoSum = function(numbers, target) { for(let i=0; i<numbers.length;i++) { for (let j = i + 1; j...原创 2018-11-23 18:59:15 · 141 阅读 · 0 评论 -
349 两个数组的交集 javascript leetcode
/** * @param {number[]} nums1 * @param {number[]} nums2 * @return {number[]} */var intersection = function(nums1, nums2) { const resultArr = [] let maxLength = Math.max(nums1.length,nums2.l...原创 2018-11-22 14:13:42 · 111 阅读 · 0 评论 -
122. 买股票的最佳时机 II javascript
结题思路:判断后一位元素是否大于前一位。如果是累加。/** * @param {number[]} prices * @return {number} */var maxProfit = function(prices) { let max = 0; for (let i = 1; i < prices.length; i++) { let d = prices...原创 2018-11-19 15:41:58 · 106 阅读 · 0 评论 -
485 最大连续1的个数 javascript leetcode
/** * @param {number[]} nums * @return {number} */var findMaxConsecutiveOnes = function(nums) { let max = 0; let cur = 0; nums.map(function (num) { if(num == 1){ max...原创 2018-11-19 17:01:16 · 183 阅读 · 0 评论 -
704 二分查找 javascript leetcode
/** * @param {number[]} nums * @param {number} target * @return {number} */var search = function(nums, target) { let resultIndex let otherIndex nums.forEach((item, index) =>{ if (i...原创 2018-11-22 18:33:32 · 174 阅读 · 0 评论 -
217 存在重复元素 javascript leetcode
思路 :数组set 长度是否重复 /** * @param {number[]} nums * @return {boolean} */var containsDuplicate = function(nums) { let nums1 = new Set(nums); if (nums1.size !== nums.length) { return...原创 2018-11-30 18:55:52 · 213 阅读 · 0 评论 -
leetcode 961 重复N次的元素 javascript
在大小为 2N 的数组 A 中有 N+1 个不同的元素,其中有一个元素重复了 N 次。返回重复了 N 次的那个元素。示例 1:输入:[1,2,3,3]输出:3示例 2:输入:[2,1,2,5,3,2]输出:2示例 3:输入:[5,1,5,2,5,3,5,4]输出:5/** * @param {number[]} A * @return {num...原创 2019-01-07 13:36:37 · 206 阅读 · 0 评论 -
leetCode 709 转换成小写字母 javascript
示例 1:输入: "Hello"输出: "hello"由于javascript 自带 toLowerCase 函数/** * @param {string} str * @return {string} */var toLowerCase = function(str) { return str.toLowerCase()};第二种解法: 思路: 循环正则...原创 2018-07-26 18:24:48 · 373 阅读 · 0 评论 -
javascript leetcode 78 子集
目前最优解法:/** * @param {number[]} nums * @return {number[][]} */var subsets = function(nums) { const len = nums.length let arr = [] let res = [] dfs(0, arr) return res function dfs (n...原创 2018-07-19 18:55:23 · 552 阅读 · 0 评论 -
leetcode 922. 按奇偶排序数组 II javascript
不多说,上代码/** * @param {number[]} A * @return {number[]} */var sortArrayByParityII = function(A) { let tempArr = [] let t = 0; let a = 1; for (let i = 0; i < A.length; i++) { if (A[...原创 2018-11-13 17:42:00 · 266 阅读 · 0 评论 -
766 托普利茨矩阵 javascript
/** * @param {number[][]} matrix * @return {boolean} */var isToeplitzMatrix = function(matrix) { let n = matrix.length; let m = matrix[0].length; for (let i = 0; i < n - 1; i++) { fo...原创 2018-09-20 17:48:40 · 246 阅读 · 0 评论 -
leetcode 反转链表 206 javascript
反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题?解法一:迭代设置两个指针,p 和 q,p指向head.next,q指向head.next.next。/** * Definitio...原创 2018-09-14 11:23:05 · 1126 阅读 · 0 评论 -
Leetcode javascript 第一题: 两数之和
/** * @param {number[]} nums * @param {number} target * @return {number[]} */var twoSum = function(nums, target) { // 用于记录数组nums的长度 const length = nums.length; // 实例化一个Map对象 l...原创 2018-05-18 15:44:25 · 957 阅读 · 0 评论 -
Leetcode 371 不使用运算符 + 和-,计算两整数a 、b之和 javascript
/** * @param {number} a * @param {number} b * @return {number} */var getSum = function(a, b) { if((a&b) == 0) return a|b; return getSum(a^b,(a&b)<<1); };不...原创 2018-05-23 14:08:11 · 2511 阅读 · 0 评论 -
leetcode 476 数字的补数 javascript
var findComplement = function(num) { let sum = 0; let i = 0; while(sum < num) { sum += Math.pow(2,i); i++; } return sum - num; };原创 2018-05-24 11:55:35 · 231 阅读 · 0 评论 -
LeetCode 258 各位相加 javascript
/** * @param {number} num * @return {number} */var addDigits = function(num) { if (num == 0) return 0; let result = num % 9; if (result == 0) return 9; return result; };...原创 2018-05-25 10:43:41 · 186 阅读 · 0 评论 -
Leetcode 832. Flipping an Image js 反转图像
列子: Input: [[1,1,0,0],[1,0,0,1],[0,1,1,1],[1,0,1,0]]Output: [[1,1,0,0],[0,1,1,0],[0,0,0,1],[1,0,1,0]]Explanation: First reverse each row: [[0,0,1,1],[1,0,0,1],[1,1,1,0],[0,1,0,1]].Then invert ...原创 2018-06-07 17:03:01 · 296 阅读 · 0 评论 -
LeetCode 119.杨辉三角 II javascript
日常刷题 输入: 3输出: [1,3,3,1]/** * @param {number} rowIndex * @return {number[]} */var getRow = function(rowIndex) { let arr = []; for (var i = 1; i <= rowIndex+1; i++) { if ...原创 2018-06-13 10:44:25 · 299 阅读 · 0 评论 -
LeetCode 118 杨辉三角 javascript
给定一个非负整数 numRows,生成杨辉三角的前 numRows 行。 在杨辉三角中,每个数是它左上方和右上方的数的和。示例:输入: 5输出:[ [1], [1,1], [1,2,1], [1,3,3,1], [1,4,6,4,1]]解析:找规律 。arr[j + 1] = preArr[j] + preArr[j + 1];...原创 2018-06-14 10:36:57 · 374 阅读 · 0 评论 -
LeetCode 589 N叉树的前序遍历 javascript
给定一个 N 叉树,返回其节点值的前序遍历。例如,给定一个3叉树:返回其前序遍历:[1,3,5,6,2,4]。思路:循环调用root.children下是否有子节点push到数组内/** * // Definition for a Node. * function Node(val,children) { * this.val = val; * th...原创 2019-04-26 10:17:49 · 196 阅读 · 0 评论