2022年3月14日

摘要: 一、题目 二、题目分析 1.双指针:为什么要这么写?按照题目地说明:合并后地节点是递增地,所以把两个链表的节点进行比较把最小的值放入到一个新的数组里,然后把数组用FOR循环变成链表形式输出 2.我们利用双指针,再运行的过程中,肯定会有一个链表变成null,另一个链表就无法比较,所以我们最初可以用 i 阅读全文

posted @ 2022-03-14 23:44 AcTourist 阅读(38) 评论(0) 推荐(0)

2022年3月13日

摘要: 一、题目要求 二、题目分析 1.在单向链表中,节点中没有指向一个节点地指针,所以只好从链表地头节点开始顺序查找 2.那是不是一定需要得到被删除地节点地前一个节点呢?答案是不需要地,我们可以很方便地得到要删除地节点地下一个节点。如果我们把下一个节点地内容覆盖掉,再把下一个节点删除,那是不是就相当于把当 阅读全文

posted @ 2022-03-13 23:45 AcTourist 阅读(22) 评论(0) 推荐(0)

摘要: 一、题目 二、题目分析 1.第一种解法:遍历两次,第一次遍历求出链表长度,第二次遍历找到k 个节点,为什么要怎么做:本题中的链表是单向链表,单向链表的节点只有从前往后的指针而没有从后往前的指针;假设整个链表有n个节点,那么倒数第K个节点就是从头节点开始的第n-k个节点。 2.第二解法:双指针解法;快 阅读全文

posted @ 2022-03-13 23:20 AcTourist 阅读(44) 评论(0) 推荐(0)

摘要: 一、题目 二、题目分析 1.它输入得数据不是数组也不是字符串,所以第一步把输入得数据转换成字符串形式 Let n = num.toString(); 2.这和青蛙的题目相似,为什么这么讲,因为判 字母 只能从 0-25 的数字里翻译出来,所以翻译不会超过三位数,只能再一位数或者二位数里 3.dp[i 阅读全文

posted @ 2022-03-13 22:07 AcTourist 阅读(36) 评论(0) 推荐(0)

2022年3月12日

摘要: 一、题目 二、理解 1.看到这个题目我第一个反应是答案的位置为 [列的长度-1][行的长度-1],所以最终的答案要返回这个位置。 2.第二个反应是:从左上角开始,往下或者往左进行,所以求出第一行每个位置当前最大值和第一列每个位置当前的最大值,为什么要这么弄做?因为我们就可以求出下一个位置当前最大值 阅读全文

posted @ 2022-03-12 01:03 AcTourist 阅读(32) 评论(0) 推荐(0)

2022年3月10日

摘要: 一、题目要求 二、题目分析 用 dp数组 存储每天的股票最大利润,例如 dp[i] 代表第i天股票的最大利润 而每天的股票利润等于什么?前一天股票的利润,跟今天的股票价格和历史股票最低价的差值 进行相比,取大的那个 得出一个公式:dp(n) = Math.max(dp(n - 1), prices[ 阅读全文

posted @ 2022-03-10 23:41 AcTourist 阅读(53) 评论(0) 推荐(0)

摘要: 一、题目 二、题目分析 从左到右进行求和,用一个max变量来保存最大的数组和如果当前求和的结果sum,大于0的话,就继续加当前元素如果当前求和的结果sum小于0的话,那么加上当前元素只会对最终数组和起减少的作用,而不是增大数组和,所以如果当前求和的结果sum小于0的话则直接以当前元素为起点新起数组求 阅读全文

posted @ 2022-03-10 23:38 AcTourist 阅读(18) 评论(0) 推荐(0)

摘要: 一、题目 二、题目分析 1.首先我们考虑最简单的情况,如果只有1级台阶,那显示只有一种跳法。如果有2级台阶,那么就两种跳法:一种是分两次跳,每次跳一级,另一种就是一次跳两级 2.接着我们讨论最普通的情况,假设要上n层(n>2),第一种情况,第一次只跳一级,此时跳法数目等于后面剩下的n-1级台阶的跳法 阅读全文

posted @ 2022-03-10 00:28 AcTourist 阅读(35) 评论(0) 推荐(0)

2022年3月9日

摘要: 一、题目 二、分析 1.没啥难度,简单的,继续做下一题 三、代码 /** * @param {number} n * @return {number} */ var fib = function(n) { if(n==0||n==1) return n; let a=0,b=1,sum=1; let 阅读全文

posted @ 2022-03-09 23:46 AcTourist 阅读(22) 评论(0) 推荐(0)

2022年3月8日

摘要: 1.路由当应用变得复杂的时候,就需要分块的进行处理和展示,传统模式下,我们是把整个应用分成了多个页面,然后通过 URL 进行连接。但是这种方式也有一些问题,每次切换页面都需要重新发送所有请求和渲染整个页面,不止性能上会有影响,同时也会导致整个 JavaScript 重新执行,丢失状态。 传统路由基于 阅读全文

posted @ 2022-03-08 23:52 AcTourist 阅读(113) 评论(0) 推荐(0)