自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

原创 阿里云服务器centos7部署 SpringBoot 项目完整过程

文章目录一、安装Xftp、Xshell、Navicat一、安装Xftp、Xshell、NavicatXftp:用于传输文件Xshell:虚拟命令行Navicat:前两样我都用社区版的,最后一种是收费的(用注册机)

2020-07-27 02:03:52 460

原创 JavaScript 习题:考察 this 指向以及作用域-1

// 请问下列代码输出什么?为什么?function a(xx){ this.x = xx; return this;}var x = a(5), y = a(6);console.log(x.x); // undefinedconsole.log(y.x); // 6答案:函数中的 this 指向 window。1. x = a(5) , x = window ;2. y = a(6) , x = 6。感谢观看 期待关注知乎:叄贰壹简书:带只拖鞋去流浪关注我,带你

2020-07-24 19:14:27 184

原创 leetcode-97-交错字符串

递归-暴力思路:一个字符一个字符进行比较。/** * @param {string} s1 * @param {string} s2 * @param {string} s3 * @return {boolean} */var isInterleave = function(s1, s2, s3) { const n = s1.length, m = s2.length; if (n + m != s3.length) { return fa.

2020-07-19 00:15:55 180

原创 leetcode-96-不同的二叉搜索树

动态规划给定一个有序序列 1 ⋯n,为了构建出一棵二叉搜索树,我们可以遍历每个数字 ii,将该数字作为树根,将 1⋯(i−1) 序列作为左子树,将 (i+1)⋯n 序列作为右子树。接着我们可以按照同样的方式递归构建左子树和右子树。在上述构建的过程中,由于根的值不同,因此我们能保证每棵二叉搜索树是唯一的。/** * @param {number} n * @return {number} */var numTrees = function(n) { let res = new.

2020-07-16 11:56:33 107

原创 leetcode-10-正则表达式匹配

动态规划绘制如下图的 ‘aaa’ 与 ‘abac*a’ 的正则表达式匹配/** * @param {string} s * @param {string} p * @return {boolean} */var isMatch = function(s, p) { const sLen = s.length, pLen = p.length; let dp = new Array(sLen + 1); for (let i = 0; i <.

2020-07-15 16:44:20 148

原创 leetcode-402-移掉k位数字

贪心算法依题意,我们要删除k位数字使得最后这个数值最小,其实不难发现,1432(去掉1位数字最小是132),1432(去掉2位数字最小是12),1432(去掉3位数字最小是1),那么这里面的规律是什么呢?很显然,就是前一个数比后一个数大就会去除掉,因此,可以开始了。当然,不能忽略细节去除个数和字符串长度相等时,返回的应该是0去除之后,最前的0应该去除(如002应处理成2)最后一个,最容易忽略(如2000去除1个数之后会变成000),如果不处理,返回的就可能是空串。var removeKd.

2020-07-14 18:41:15 187

原创 leetcode-120-三角形最小路径和

动态规划依题意,不难发现其中的规律,其中规律如下:第一个元素和最后一个元素只能和同一列的相加其他元素可以和同一列和前一列的相加当然,要求的都是前一行因此,动态转移方程如下:dp[i][0] = dp[i-1][0] + triangle[i][0]dp[i][j] = min(dp[i-1][j],dp[i-1][j-1]) + triangle[i][j]假设该行元素个数是n dp[i][n-1] = dp[i-1][j-1] + triangle[i][j]// @lc c.

2020-07-14 09:35:55 147

原创 leetcode-350-两个数组的交集 II

哈希表万物皆对象,JavaScript 的对象就具有哈希表的功能,所以接下来使用对象代替哈希表(实际上在 JavaScript 里面没有哈希表的概念,大概就是因为这个原因吧)。假设nums1长度是n,nums2长度是m,那么时间复杂度 O(n+m)。首先构造哈希表,其次对照哈希表返回交集。var intersect = function(nums1, nums2) { const n = nums1.length; const m = nums2.length; if (.

2020-07-13 09:56:38 100

原创 leetcode-14-最长公共前缀

横向扫描(暴力)例如 ["flower","flow","flight"]1. 先赋予 res 初始值 flower2. flower 和 flow 明显 flow 长度短,比较4次,得到 res = "flow"3. flow 和 flight 显然 flow 比较短,比较4次,得到 res = "fl"4. 因此,其最长公共前缀是 "fl"// @lc code=start/** * @param {string[]} strs * @return {string} */v...

2020-07-12 14:49:37 90

原创 leetcode-174-地下城游戏

动态规划注意一个最重要的条件,如果勇士的血量小于1,那么英雄就挂了,所以转移方程 dp[i][j]=max(min(dp[i+1][j],dp[i][j+1])−dungeon(i,j),1) 。也就是说勇士的血量最小都要是1,保证勇士能够活着见到公主。// @lc code=start/** * @param {number[][]} dungeon * @return {number} */var calculateMinimumHP = function(dungeon) { ..

2020-07-12 13:59:56 195

原创 n != n 的值为 true,n 的值为多少?

感谢观看 期待关注知乎:叄贰壹简书:带只拖鞋去流浪关注我,带你一起写bugwarning :未经授权,不得转载有问题的小伙伴请在下方留言,喜欢就点个赞吧

2020-07-12 12:58:34 199

原创 leetcode-309-最佳买卖股票时机含冷冻期

动态规划// @lc code=start/** * @param {number[]} prices * @return {number} */var maxProfit = function(prices) { const len = prices.length; if (!len) { return 0; } let dp = new Array(len + 1); for (let i = 0; i <= len; i++.

2020-07-10 15:46:28 161

原创 mongodb 4.2 下载安装配置(图解教程)

文章目录下载安装配置(创建自己的数据库、日志文件、开启服务)下载安装配置(创建自己的数据库、日志文件、开启服务)新建 mongo.config 并配置 dbpath 和 logpath配置数据库,并访问 https://localhost:27017服务配置、开启服务感谢观看 期待关注知乎:叄贰壹简书:带只拖鞋去流浪关注我,带你一起写bugwarning :未经授权,不得转载有问题的小伙伴请在下方留言,喜欢就点个赞吧...

2020-07-10 07:57:11 954 1

原创 leetcode-面试题 17.13. 恢复空格

js中forEach,for in,for of循环的用法JS对于字符串的切割截取/** * @param {string[]} dictionary * @param {string} sentence * @return {number} */var respace = function(dictionary, sentence) { const len = sentence.length; if (!len) return 0; const dict = Arr.

2020-07-09 15:14:29 120 1

原创 leetcode-面试题 16.11. 跳水板

这是一道数学题,排列组合里面的组合。反正不是长的就是短的,那就分成两种即可,最后在进行数组去重就ok了。/** * @param {number} shorter * @param {number} longer * @param {number} k * @return {number[]} */var divingBoard = function(shorter, longer, k) { let res = []; if(!k) return res; for.

2020-07-08 12:18:36 125

原创 leetcode-55-跳跃游戏

贪心算法// @lc code=start/** * @param {number[]} nums * @return {boolean} */var canJump = function(nums) { let reach = 0; for (let i = 0; i < nums.length; i++) { if (i > reach) return false; reach = Math.max(reach, i + num.

2020-07-08 11:55:24 137

原创 leetcode-54-螺旋矩阵

模拟螺旋矩阵的路径// @lc code=start/** * @param {number[][]} matrix * @return {number[]} */var spiralOrder = function(matrix) { let res = []; if (!matrix.length) return res; let up = 0; let down = matrix.length - 1; let left = 0; let .

2020-07-08 10:17:59 121

原创 leetcode-53-最大子序和

动态规划思路:如果前面的小于等于零,那我们丢弃前面的子数组。// @lc code=start/** * @param {number[]} nums * @return {number} */var maxSubArray = function(nums) { const len = nums.length; const dp = new Array(len); dp[0] = nums[0]; for (let i = 1.

2020-07-08 09:31:58 90

原创 leetcode-112-路径总和

function TreeNode(val) { this.val = val; this.left = this.right = null;}解一:递归先判断树结构是否为null,如果是null,直接返回false;判断该树节点是否有后代,没有直接返回判断该节点值是否等于sum的布尔值;最后,剩下就是有左子节点或者右子节点的情况,这种情况递归。// @lc code=start/** * @param {TreeNode} root * @param {numbe.

2020-07-07 15:28:47 197

原创 leetcode-63-不同路径

动态规划// @lc code=start/** * @param {number[][]} obstacleGrid * @return {number} */var uniquePathsWithObstacles = function(obstacleGrid) { if (obstacleGrid == null || obstacleGrid.length == 0) { return 0; } let row = obstacleGrid...

2020-07-06 23:13:42 115

原创 leetcode-44-通配符匹配

动态规划求解:// @lc code=start/** * @param {string} s * @param {string} p * @return {boolean} */var isMatch = function(s, p) { let row = s.length; let col = p.length; let dp = new Array(row + 1); for (let i = 0; i <= row; i++) { ..

2020-07-06 20:14:05 105

原创 leetcode-32-最长有效括号

解1:动态规划// @lc code=start/** * @param {string} s * @return {number} */var longestValidParentheses = function(s) { const sLen = s.length; if (!sLen) return 0; let dp = new Array(sLen).fill(0); dp[-1] = 0; s.split('').forE.

2020-07-05 19:05:51 118

原创 vscode 绘图 Draw.io Integration

创建 *.drawio 文件,使用 vscode 就是下方的界面了感谢观看 期待关注知乎:叄贰壹简书:带只拖鞋去流浪关注我,带你一起写bugwarning :未经授权,不得转载有问题的小伙伴请在下方留言,喜欢就点个赞吧...

2020-07-03 16:27:43 6072 3

原创 leetcode-108-将有序数组转换为二叉搜索树

题目给出一个 TreeNode 的构造函数(也是树的数据结构)function TreeNode(val) { this.val = val; this.left = this.right = null;}二分递归 =>function TreeNode(val) { this.val = val; this.left = this.right = null;}var sortedArrayToBST = function(nums) { i.

2020-07-03 11:05:24 112

原创 leetcode-378-有序矩阵中第K小的元素

二维数组转一维数组(扁平化)- Array内置方法 flat()/** * @param {number[][]} matrix * @param {number} k * @return {number} */var kthSmallest = function(matrix, k) { // 二维数组转一维数组 -> 排序(正序) return matrix.flat().sort((a, b) => a - b)[k - 1];};感谢观看 期待关注..

2020-07-02 13:36:07 116

原创 leetcode-718-最长重复子数组

深度优先搜索算法/** * @param {number[]} A * @param {number[]} B * @return {number} */var findLength = function(A, B) { const al = A.length; const bl = B.length; const dp = new Array(al + 1).fill(0); for (let i = 0; i <= al; i++) { .

2020-07-01 16:35:02 159

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除