- 博客(47)
- 收藏
- 关注
原创 LeetCode hot100-2
通过将每个字符串排序后作为哈希表键值,将原字符串存入对应分组。若键值不存在则新建分组。该方法时间复杂度O(nklogk),n为字符串数量,k为字符串最大长度。
2025-05-24 17:14:23
217
原创 力扣56.合并区间
以数组intervals表示若干个区间的集合,其中单个区间为。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。区间 [1,3] 和 [2,6] 重叠, 将它们合并为 [1,6].[[1,5]]区间 [1,4] 和 [4,5] 可被视为重叠区间。
2024-12-09 20:05:16
593
原创 力扣143.重排链表
给定一个单链表L的头节点head,单链表L表示为:请将其重新排列后变为:不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。[1,4,2,3]
2024-12-07 18:58:02
647
原创 力扣300.最长递增子序列
给你一个整数数组nums,找到其中最长严格递增子序列的长度。是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7]是数组的子序列。4最长递增子序列是 [2,3,7,101],因此长度为 4。41。
2024-12-06 18:46:22
766
原创 力扣92.反转链表Ⅱ
给你单链表的头指针head和两个整数left和right,其中。请你反转从位置left到位置right的链表节点,返回。[5]你可以使用一趟扫描完成反转吗?
2024-12-04 16:28:00
954
原创 力扣103.二叉树的锯齿形层序遍历
给你二叉树的根节点root,返回其节点值的。(即先从左往右,再从右往左进行下一层遍历,以此类推,层与层之间交替进行)。
2024-12-01 15:21:31
940
原创 力扣112.路径总和
这题的思路跟求二叉树最大深度有相似之处,只需要增加一个参数,在遍历左右节点的同时将增加的参数与该节点的val值作差,并判断在叶子节点时该参数是否为0,如果是0则表示该路径和为题目给的目标值,当所有节点都遍历完后如果没有和为目标值的路径,才返回false。不存在 sum = 5 的根节点到叶子节点的路径。由于树是空的,所以不存在根节点到叶子节点的路径。的路径,这条路径上所有节点值相加等于目标和。等于目标和的根节点到叶节点路径如上图所示。和一个表示目标和的整数。是指没有子节点的节点。
2024-11-15 16:06:36
469
原创 力扣543.二叉树的直径
首先我们要理解什么是二叉树的直径,我们可以理解为该二叉树的 最大的 两节点间的最短路径,既然要达到最大,那么我们可以转换为求节点的左右子树的深度和,即可求出经过该节点的最大的两节点(左子树最深的节点与右子树最深节点)间的最短路径,最后一步就是遍历整个二叉树,比较每个节点,定义一个变量Max记录最大的路径即为该二叉树直径。定义一个函数实现求出左右子树深度和,比较深度和与最大路径Max,更新最大路径Max,继续遍历左右节点,直径可能不包含头节点,必须向下遍历。给你一棵二叉树的根节点,返回该树的直径。
2024-11-13 15:04:37
494
原创 力扣110.平衡二叉树
平衡二叉树就是所有节点的左右子树的深度相差不超过1的二叉树,判断子树深度写到一个函数中,将判断左右子树是否平衡用一个函数实现,主函数中遍历二叉树判断该二叉树是否为平衡二叉树
2024-11-12 19:02:58
336
原创 力扣69.x的平方根
定义一个long long类型的变量mid用来存储中间值以及乘方,在乘方小于目标值时继续在右半区域寻找,反之在左半区域寻找,相等则直接返回mid,如果左边界小于右边界则左边界为所求值
2024-11-08 20:41:14
187
原创 力扣LCR 140.训练计划 Ⅱ
创建两个同时指向头节点的链表指针,让其中一个先向后移动cnt次,之后两个指针再同时向后移动,当先向后移动的指针遍历完链表时,另一个链表指针就在链表倒数第cnt个节点的位置。
2024-11-07 14:48:18
329
原创 力扣704.二分查找
向函数中传入左边界、右边界、数组和目标值,直接将目标值与该区间中间值比较,大的话取该区间的右半区间,反之取左半区间,每次寻找可以见减少一半的区间,即为二分。具体代码如下
2024-11-04 20:50:11
377
原创 力扣94.二叉树的中序遍历
代码思路为:如果左节点不为空,则先遍历左子树,即调用递归函数,参数传入左节点,然后向数组中插入该节点val,最后判断右节点是否为空,不为空则还需要调用一次递归遍历右子树,递归结束条件为该节点为空则直接返回。最为简单的方法就是递归,在该题中,我们需要先创建一个动态数组,用来存储遍历到的节点的val值,然后实现中序遍历函数代码即可。二叉树的中序遍历即为先遍历节点的左子树,然后到中间节点,最后遍历右子树。给定一个二叉树的根节点。
2024-11-02 20:04:38
314
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
2