358 1 分钟

附:node 更换版本(简单操作) 安装 nvm 1 系统已经有 node 网址:https://github.com/coreybutler/nvm-windows/releases 下载 nvm-setup.zip, 解压之后会有个.exe 安装程序,第一步是同意,剩下的无脑 next 即可安装成功。 # 操作 打开 cmd,使用 nvm ls 命令查看本地已有版本 使用 安装命令 nvm install v10.16.0 即可(别忘了写 v) 再次使用 nvm ls 命令查看本地已有版本。发现 12.15.0 和 10.16.0 均有 切换版本 nvm use 12.15.0 #...
1.2k 1 分钟

# form-serialize 插件 作用:快速收集表单元素的值 这么多的用户填写的表单信息我们如果一个一个获取的话会很麻烦,可以使用 form-serialize 插件来完成。 # 语法: // 获取表单对象const form = ducment.querySelector('.example-form')//serialize 函数 参数 1:指定获取哪个表单范围内的值传入表单对象,参数 2:传入配置对象const data = serialize(form,{hash: true , empty:...
2.4k 2 分钟

# 输出杨辉三角 可以看到上图就是杨辉三角,它的两边都是 1 而下面的值就是正上方左右两个数字的和。 比如说 2 它的正上方就是 1 和 1 所以相加就是 2。以此类推 分析 把它斜着看 1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 行 i 列 j,那么 [i][j] 的取值应为 [i - 1][j - 1] + [i - 1][j] 当 j = 0 或 i = j 时, [i][j] 取值为 1 代码: public class Yanghuisanjiao{ private static int element(int i, int j)...
672 1 分钟

# 删除排序链表中的重复元素 题目要求: 给定一个已排序的链表的头 head , 删除所有重复的元素,使每个元素只出现一次 。返回 已排序的链表 。 示例 1: 输入:head = [1,1,2] 输出:[1,2] 示例 2: 输入:head = [1,1,2,3,3] 输出:[1,2,3] 提示: 链表中节点数目在范围 [0, 300] 内 -100 <= Node.val <= 100 题目数据保证链表已经按升序 排列 # 方法 1:双指针 p1 p21 -> 1 -> 2 -> 3 -> 3 ->...
1.5k 1 分钟

# 删除排序链表中的重复元素 || 题目要求: 给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 。返回 已排序的链表 。 示例 1: 输入:head = [1,2,3,3,4,4,5] 输出:[1,2,5] 示例 2: 输入:head = [1,1,1,2,3] 输出:[2,3] 提示: 链表中节点数目在范围 [0, 300] 内 -100 <= Node.val <= 100 题目数据保证链表已经按升序 排列 # 方法 1: 递归 递归函数负责返回:从当前节点 (我) 开始,完成去重的链表 若我与 next...
571 1 分钟

# 删除链表的倒数第 N 个节点 题目要求: 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例 1: 输入:head = [1,2,3,4,5], n = 2 输出:[1,2,3,5] 示例 2: 输入:head = [1], n = 1 输出:[] 示例 3: 输入:head = [1,2], n = 1 输出:[1] 提示: 链表中结点的数目为 sz 1 <= sz <= 30 0 <= Node.val <= 100 1 <= n <= sz # 双指针...
889 1 分钟

# 买卖股票的最佳时机 II 给你一个整数数组 prices ,其中 prices [i] 表示某支股票第 i 天的价格。 在每一天,你可以决定是否购买和 / 或出售股票。你在任何时候 最多 只能持有 一股 股票。你也可 以先购买,然后在 同一天 出售。 返回 你能获得的 最大 利润 。 输入:[1,8,6,2,5,4,8,3,7] 输出:49 解释:图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色 部分)的最大值为 49。 输入:digits =...
804 1 分钟

# 链表的中间节点 给你单链表的头结点 head ,请你找出并返回链表的中间结点。 如果有两个中间结点,则返回第二个中间结点。 示例 1: 输入:head = [1,2,3,4,5] 输出:[3,4,5] 解释:链表只有一个中间结点,值为 3 。 示例 2: 输入:head = [1,2,3,4,5,6] 输出:[4,5,6] 解释:该链表有两个中间结点,值分别为 3 和 4 ,返回第二个结点。 提示: 链表的结点数范围是 [1, 100] 1 <= Node.val <= 100 # 方法...
1.5k 1 分钟

# 回文链表 给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false 。 示例 1: 输入:head = [1,2,2,1] 输出:true 示例 2: 输入:head = [1,2] 输出:false 提示: 链表中节点数目在范围 [1, 105] 内 0 <= Node.val <= 9 # 方法 1:快慢指针 思路分析: 先找到链表的中间点: 如果是偶数就是中间靠右的 2 1 2 2 1 找到中间点后我们将其后面的节点进行反转 # 中间节点后面的元素 2 1 #...
1.1k 1 分钟

# 合并 K 个升序链表 给你一个链表数组,每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中,返回合并后的链表。 示例 1: 输入:lists = [[1,4,5],[1,3,4],[2,6]] 输出:[1,1,2,3,4,4,5,6] 解释:链表数组如下: [ 1->4->5, 1->3->4, 2->6 ] 将它们合并到一个有序链表中得到。 1->1->2->3->4->4->5->6 示例...