2 叄贰壹

学生身份

我要认证

流過血的手指 彈出世間的絕唱

等级
TA的排名 5w+

阿里云服务器centos7部署JavaWeb(Spring)项目完整过程

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

2020-07-27 02:03:52

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

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

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

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

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

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

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

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

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

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

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

2020-07-12 12:58:34

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

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

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

2020-07-10 07:57:11

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

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

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

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

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

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

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

查看更多

勋章 我的勋章
  • 领英
    领英
    绑定领英第三方账户获取
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 脉脉勋章
    脉脉勋章
    绑定脉脉第三方账户获得
  • 签到达人
    签到达人
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 新人勋章
    新人勋章
    用户发布第一条blink获赞超过3个即可获得
  • 阅读者勋章Lv2
    阅读者勋章Lv2
    授予在CSDN APP累计阅读博文达到7天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。