自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 回溯算法总结(Java)

例子:给定一个可能包含重复元素的整数数组 nums,返回该数组所有可能的子集(幂集)。说明:解集不能包含重复的子集。每层建立hash表,进行查询。

2025-04-11 10:01:15 192

原创 递增子序列

continue条件:1. 不能重复;

2025-04-09 20:52:04 173

原创 分割回文串 && 复原IP地址(Java)

写博客的目的是每日督促并记录刷题,也欢迎大家批评指正~(day26)(呜呜隔了好多天了,后边要更加油!!

2025-04-07 21:38:49 239

原创 电话号码的字母组合&&组合总和II && 回溯注意事项(Java)

思路:多个循环可以考虑回溯。

2025-03-27 22:02:48 334

原创 二叉树相关题目总结(Java)

基础,必须掌握!其中,需要注意的两道题:求二叉树的最大深度和最小深度(注意陷阱)

2025-03-26 10:14:40 268

原创 二叉搜索树的最近公共祖先 && 删除二叉搜索树中的节点 && 修剪二叉搜索树(Java)

重要结论:第一次遇到cur节点是数值在[q, p]区间中,那么cur就是q和p的最近公共祖先(闭区间是因为公共祖先可以是本身)(如果知道这个结论:本题就类似于给定二叉搜索树(BST)的根节点 root 和一个整数值 val—第700题)

2025-03-24 22:00:24 336

原创 验证二叉搜索树 && 二叉搜索树中的众数 && 二叉树的最近公共祖先(Java)

二叉搜索树特点:左子树的值<中间节点<右子树的值。(注意没有=):由于二叉搜索树的特点,决定了它的中序遍历一定是递增。所以可以将其中序遍历的值放在list中,检验list中的值是否全部递增,该方法的实现见代码1。:可以在递归过程中记录前一个节点的值,不断跟前节点进行比较,不满足直接退。见代码2.

2025-03-20 22:06:48 343

原创 从中序与后序遍历序列构造二叉树(Java)

从后序数组中找到最后一个元素的值,即为当前节点并进行节点的创建,并在中序数组中找到该值所在索引(使用Map)。接着开始递归,后序数组倒着向前(所以递归应该先从右子树开始),当右子树遍历完(即不存在遍历区间时left>right)return。

2025-03-18 20:39:36 289

原创 二叉树的路径总结(Java)

从头开始遍历,并在遍历过程中将节点数值保存,当遍历到根节点(即:左右孩子都为空时)完成一条路径,根据题目做相应处理后开始回到上一步,并开始不断进行遍历回溯。下面就以三道题举例。

2025-03-18 16:26:47 630

原创 左叶子之和 && 找到左下角的值(Java)

思路:只存入本节点为上一节点的左枝且没有孩子的数字。后序遍历往前加。

2025-03-18 15:16:12 178

原创 完全二棵树 && 平衡二叉树 && 二叉树的所有路径(Java)

注意:利用递归时一定要想好单层递归条件,这决定了return后边写什么。

2025-03-17 14:00:15 303

原创 对称二叉树 && 另一棵树的子树(Java)

总结:递归是一个从上往下遍历,总下往上返回的一个过程。

2025-03-14 09:35:15 185

原创 二叉树三种遍历方式总结(Java)

以下主要是记录三种遍历方式的特征以及以翻转二叉树为例子,写代码。

2025-03-13 15:36:09 145

原创 二叉树的层序遍历&&二叉树的右视图&&填充每个节点的下一个右侧节点指针及II(Java)

思路:分层—从上到下、从左到右,用队列。每一层放入一个list,所有的list放入结果集,所以要有两个循环。外层循环:队列不为空内层循环:循环该层的节点个数,直接用size获取(注意:如果任何操作有关分层次,都需要两个循环)

2025-03-12 21:44:42 219

原创 二叉树的深度遍历(Java)

主要思想:利用栈,先放中间节点,取出并记录结果集。接着放右节点和左节点,并不断将栈口元素作为新的root。主要思路:先看左侧(一直看到null),再看右侧。后序遍历参考前序遍历。

2025-03-11 18:59:34 150

原创 二叉树基本介绍

全都满了(除了最后一层,度都为2)

2025-03-10 17:04:57 157

原创 滑动窗口的最大值 && 前K个高频元素(Java)

整体思路:使用优先级队列将最大值放在首位,这样直接加入结果集。但是也需要找到出队列的值—。因此优先级队列中要维护数组,数组内分别放值和索引。

2025-03-10 15:27:44 229

原创 有效的括号 && 删除字符串中的所有相邻重复项 && 逆波兰表达式求值(Java)

知识点:对称匹配(要求相应位置匹配且没有多余)—使用栈解决思路:只要是左符号都可以加;如果栈为空的时候加右符号直接返回false;如果栈不为空且加入的为右符号就开始进行消消乐。当整个字符串循环完了且栈为空,说明消消乐成功。

2025-03-07 20:51:07 113

原创 用栈实现队列 && 队列实现栈(Java)

思路:最新来的一定要在出栈口(一个个叠加),用que2作为存放新来的队列。解释:每次push新元素时,都将其放入一个空队列,然后将另一个队列的所有元素转移到这个队列中,最后交换两个队列的引用。基本思路:使用两个栈(输入栈和输出栈共同完成一个队列),保证把进栈数据全部导入到输出栈(注意是全部导入)。写博客的目的是每日督促并记录刷题,也欢迎大家批评指正~(day12)注意:在push方法里就要随时进行这种变化。注意:将相近功能的代码抽象出来。

2025-03-06 22:26:12 344

原创 双指针法总结(Java)

指针的作用:两个指针在一个for循环下完成两个for循环的工作写博客的目的是每日督促并记录刷题,也欢迎大家批评指正~(day11)

2025-03-05 18:34:11 134

原创 找出字符串中第一个匹配项的下标&&重复的子字符串(Java)

核心:KMP算法。

2025-03-04 11:09:48 146

原创 翻转字符串里的单词&&右旋字符串(Java)

整体思路:先去除首位及多余空格(正常循环即可)—>整体大翻转(双指针交换)—>每个字符串小翻转;

2025-02-28 20:48:26 269

原创 反转字符串II && 替换数字(Java)

思路:不用库函数,对数组进行确定性扩容。使用双指针(双指针的新应用),从数组尾巴往前依次填充。写博客的目的是每日督促并记录刷题,也欢迎大家批评指正~(day9)

2025-02-27 18:25:30 200

原创 三数之和&&四数之和(Java)

大体思路:分组将两数之和放在哈希表中并不方便,因为都是在一个集合里,查询时并不好去重。所以选择在数组里进行操作,三数之和=0,可以采用将数组进行排序,依次取出三个数—i作为索引进行循环,left指针在i后一个,right指针在最后边。当如果 nums[i] + nums[left] + nums[right] < 0 说明 此时 三数之和小了,left 就向右移动,反之right向右移动。

2025-02-27 15:13:14 246

原创 两数之和&&四数相加II&&赎金信(Java)

大体思路:依次循环数组取出num,然后去找数组中是否存在target-num(查找一个数最快的方式就是用哈希表)

2025-02-27 09:16:56 295

原创 两个数组的交集&&两个数的交集II&&快乐数(Java)

写博客的目的是每日督促并记录刷题,也欢迎大家批评指正~(day8)

2025-02-25 21:52:15 146

原创 有效的字母异位词&&字母异位词分组&&找到字符串中所有字母异位词(Java)

总结:有关字母的哈希表可以使用数组,因为小写字母‘a’ = 97,26个小写英文字母都可以都过与‘a’变成数组里的索引,从而创建一个容量为26的数组。

2025-02-24 20:37:11 120

原创 删除链表的中间节点&&链表相交&&环形链表(Java)

思路:快指针走两步,慢指针走一步难点:难以确定循环结束条件解决:快指针一步步走。

2025-02-22 21:42:21 106

原创 两两交换链表中的节点&&删除链表中的倒数第n个节点(Java)

大体思路:由于链表只能正向搜索,故需要两个指针,一个在前面探路看是否到达末尾,另一个指针用来删除。写博客的目的是每日督促并记录刷题,也欢迎大家批评指正~(day5)

2025-02-21 21:20:39 178

原创 移除链表元素&&设计链表&&反转链表(Java)

做链表相关题目要求返回链表时,只返回头节点即可。

2025-02-20 20:16:55 158

原创 长度最小的子数组&&螺旋矩阵II&&区间和&&开发商购买土地(Java)

采用滑动窗口–核心还是双指针代码需要注意:不断更新result。

2025-02-20 09:49:06 277

原创 二分法查找&&移除元素(Java)

使用前提:有序数组+无重复元素。

2025-02-18 21:41:06 181

原创 Java反射理解

写这篇文章的目的是记录最近所学(针对Java反射机制,网上资料很全,在此我主要记录自己学习心得以及自己是怎么快速理解反射机制。

2024-12-27 11:23:00 274

原创 【导数的意义及梯度的含义】

今天在学习神经网络时看到梯度,突然回想不起来导数的意义以及为什么要进行求导了,跟我有一样困惑的小伙伴们可以参考这篇文章哦!

2024-07-27 16:00:22 1760

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除