
手写系列
_xiyang
想不通的事先放一放,也许明天就想不起来了
展开
-
简单通用防篡改水印组件封装(vue3)
【代码】简单通用防篡改水印组件封装(vue3)原创 2024-06-18 10:57:15 · 389 阅读 · 0 评论 -
排序算法之归并排序
归并过程为:比较a[i]和b[j]的大小,若a[i]≤b[j],则将第一个有序表中的元素a[i]复制到r[k]中,并令i和k分别加上1;否则将第二个有序表中的元素b[j]复制到r[k]中,并令j和k分别加上1,如此循环下去,直到其中一个有序表取完,然后再将另一个有序表中剩余的元素复制到r中从下标k到下标t的单元。归并排序的算法我们通常用递归实现,先把待排序区间[s,t]以中点二分,接着把左边子区间排序,再把右边子区间排序,最后把左区间和右区间用一次归并操作合并成有序的区间[s,t]。原创 2024-06-11 11:39:11 · 139 阅读 · 0 评论 -
力扣15. 三数之和
不同的三元组是 [-1,0,1] 和 [-1,-1,2]。注意,输出的顺序和三元组的顺序并不重要。答案中不可以包含重复的三元组。唯一可能的三元组和不为 0。唯一可能的三元组和为 0。,判断是否存在三元组。原创 2024-06-10 13:59:49 · 214 阅读 · 0 评论 -
简单的数组和对象扁平化
【代码】简单的数组和对象扁平化。原创 2024-06-09 15:43:54 · 158 阅读 · 0 评论 -
24. 两两交换链表中的节点
给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。原创 2024-06-08 20:27:38 · 271 阅读 · 0 评论 -
力扣199. 二叉树的右视图
先层序遍历,将每层作为数组保存在一个数组中,最后返回这个数组中包含的数组最后一项。,想象自己站在它的右侧,按照从顶部到底部的顺序,返回从右侧所能看到的节点值。原创 2024-06-09 15:44:38 · 379 阅读 · 0 评论 -
从1000-2000的范围内生成长度为1000的不重复随机数,并给出优化
从1000-2000的范围内生成长度为1000的不重复随机数,并给出优化。原创 2024-06-12 12:30:00 · 418 阅读 · 0 评论 -
力扣56. 合并区间
区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。区间 [1,4] 和 [4,5] 可被视为重叠区间。表示若干个区间的集合,其中单个区间为。请你合并所有重叠的区间,并返回。原创 2024-06-05 11:36:06 · 154 阅读 · 0 评论 -
力扣103. 二叉树的锯齿形层序遍历
层序遍历 奇数层从左向右push数据 偶数层从右向左 注意出栈位置let target = queue.shift()(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。原创 2024-06-06 15:18:00 · 250 阅读 · 0 评论 -
力扣23. 合并 K 个升序链表
请你将所有链表合并到一个升序链表中,返回合并后的链表。给你一个链表数组,每个链表都已经按升序排列。将它们合并到一个有序链表中得到。原创 2024-06-08 20:28:48 · 263 阅读 · 0 评论 -
力扣200. 岛屿数量
岛屿总是被水包围,并且每座岛屿只能由水平方向和/或竖直方向上相邻的陆地连接形成。(水)组成的的二维网格,请你计算网格中岛屿的数量。此外,你可以假设该网格的四条边均被水包围。原创 2024-06-07 11:01:38 · 218 阅读 · 0 评论 -
力扣54. 螺旋矩阵
返回矩阵中的所有元素。原创 2024-06-07 00:45:00 · 242 阅读 · 0 评论 -
力扣121. 买卖股票的最佳时机
在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5。注意利润不能是 7-1 = 6, 因为卖出价格需要大于买入价格;同时,你不能在买入前卖出股票。dp : 第i天的最大利润 = 第i天的价格减去第i-1天中的最低价格。返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回。设计一个算法来计算你所能获取的最大利润。在这种情况下, 没有交易完成, 所以最大利润为 0。买入这只股票,并选择在。原创 2024-06-06 00:45:00 · 240 阅读 · 0 评论 -
力扣11. 盛最多水的容器
图中垂直线代表输入数组 [1,8,6,2,5,4,8,3,7]。在此情况下,容器能够容纳水(表示为蓝色部分)的最大值为 49。轴共同构成的容器可以容纳最多的水。找出其中的两条线,使得它们与。返回容器可以储存的最大水量。原创 2024-06-05 00:45:00 · 251 阅读 · 0 评论 -
力扣21. 合并两个有序链表
新链表是通过拼接给定的两个链表的所有节点组成的。将两个升序链表合并为一个新的。原创 2024-06-05 12:00:00 · 249 阅读 · 0 评论 -
JS 驼峰和下划线相互转换
【代码】JS 驼峰和下划线相互转换。原创 2024-06-04 10:27:08 · 532 阅读 · 0 评论 -
力扣42. 接雨水
上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。个非负整数表示每个宽度为。原创 2024-06-03 21:52:26 · 183 阅读 · 0 评论 -
力扣206. 反转链表
请你反转链表,并返回反转后的链表。原创 2024-06-03 21:05:08 · 199 阅读 · 0 评论 -
力扣7. 整数反转
如果反转后整数超过 32 位的有符号整数的范围。给你一个 32 位的有符号整数。中的数字部分反转后的结果。原创 2024-06-03 20:47:33 · 274 阅读 · 0 评论 -
力扣524. 通过删除字母匹配到字典里最长单词
如果答案不止一个,返回长度最长且字母序最小的字符串。如果答案不存在,则返回空字符串。中最长的字符串,该字符串可以通过删除。原创 2024-06-03 20:46:43 · 316 阅读 · 0 评论 -
力扣53. 最大子数组和
请你找出一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。连续子数组 [4,-1,2,1] 的和最大,为 6。是数组中的一个连续部分。原创 2024-06-03 10:18:53 · 564 阅读 · 0 评论 -
力扣1143. 最长公共子序列
是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。最长公共子序列是 "ace" ,它的长度为 3。最长公共子序列是 "abc" ,它的长度为 3。两个字符串没有公共子序列,返回 0。是这两个字符串所共同拥有的子序列。,返回这两个字符串的最长。原创 2024-06-02 21:52:19 · 834 阅读 · 0 评论 -
力扣300. 最长递增子序列
是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。最长递增子序列是 [2,3,7,101],因此长度为 4。,找到其中最长严格递增子序列的长度。原创 2024-06-02 21:14:29 · 210 阅读 · 0 评论 -
力扣110. 平衡二叉树
给定一个二叉树,判断它是否是。原创 2024-06-02 20:37:53 · 268 阅读 · 0 评论 -
力扣107. 二叉树的层序遍历 II
(即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历)原创 2024-06-02 20:14:10 · 183 阅读 · 0 评论 -
力扣70. 爬楼梯
你有多少种不同的方法可以爬到楼顶呢?1. 1 阶 + 1 阶 + 1 阶。有两种方法可以爬到楼顶。1. 1 阶 + 1 阶。有三种方法可以爬到楼顶。2. 1 阶 + 2 阶。3. 2 阶 + 1 阶。原创 2024-06-02 19:10:17 · 266 阅读 · 0 评论 -
力扣62. 不同路径
机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish” )。问总共有多少条不同的路径?网格的左上角 (起始点在下图中标记为 “Start” )。从左上角开始,总共有 3 条路径可以到达右下角。1. 向右 -> 向下 -> 向下。2. 向下 -> 向下 -> 向右。3. 向下 -> 向右 -> 向下。原创 2024-06-02 19:04:57 · 386 阅读 · 0 评论 -
力扣46. 全排列
给定一个不含重复数字的数组。原创 2024-06-02 18:57:11 · 267 阅读 · 0 评论 -
力扣16. 最接近的三数之和
与 target 最接近的和是 2 (-1 + 2 + 1 = 2)。假定每组输入只存在恰好一个解。中选出三个整数,使它们的和与。原创 2024-06-02 18:40:12 · 327 阅读 · 0 评论 -
力扣3 无重复字符的最长子串
请你找出其中不含有重复字符的。请注意,你的答案必须是。因为无重复字符的最长子串是。因为无重复字符的最长子串是。因为无重复字符的最长子串是。,所以其长度为 3。,所以其长度为 1。,所以其长度为 3。原创 2024-06-02 18:38:23 · 208 阅读 · 0 评论 -
力扣2 两数相加
你可以假设除了数字 0 之外,这两个数都不会以 0 开头。的链表,表示两个非负的整数。它们每位数字都是按照。请你将两个数相加,并以相同形式返回一个表示和的链表。的方式存储的,并且每个节点只能存储。原创 2024-06-02 18:36:18 · 149 阅读 · 0 评论 -
力扣1 两数之和
你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。因为 nums[0] + nums[1] == 9 ,返回 [0, 1]。整数,并返回它们的数组下标。你可以按任意顺序返回答案。,请你在该数组中找出。原创 2024-06-02 18:27:42 · 273 阅读 · 0 评论 -
力扣14. 最长公共前缀
编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串。输入不存在公共前缀。原创 2024-06-02 18:26:38 · 460 阅读 · 0 评论 -
力扣5 最长回文子串
"aba" 同样是符合题意的答案。原创 2024-06-02 16:16:02 · 220 阅读 · 0 评论 -
力扣20 有效的括号
判断字符串是否有效。原创 2024-06-02 15:00:40 · 331 阅读 · 0 评论 -
力扣22 括号生成
代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且。原创 2024-06-02 14:08:31 · 452 阅读 · 0 评论 -
23.手写JavaScript 发布订阅模式(baidu)
【代码】23.手写JavaScript 发布订阅模式(baidu)原创 2024-04-30 12:00:00 · 169 阅读 · 0 评论 -
21.手写JavaScript 括号生成
【代码】21.手写JavaScript 括号生成。原创 2024-04-30 00:30:00 · 99 阅读 · 0 评论 -
20.手写JavaScript 有效的括号
【代码】20.手写JavaScript 有效的括号。原创 2024-04-30 12:00:00 · 125 阅读 · 0 评论 -
19 手写JavaScript LRU
【代码】19 手写JavaScript LRU。原创 2024-04-29 12:00:00 · 85 阅读 · 0 评论