自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 代码随想录-二叉树03-python解法

通用解法及采用遍历方法统计节点个数,较为简单的是用后序遍历递归。也可利用完全二叉树的性质,判断子树是否是满二叉树,叶子节点一定是满二叉树,若是满二叉树,根据深度返回子树节点数量,若不是,继续判断左右子树,总节点数量是左右子树节点数量和+1. 代码中用到了左移位符表示2的指数运算,左移。最小深度是从根节点到最近叶子节点的最短路径上的节点数量,而叶子节点是指没有子节点的节点,故最小深度并不是左右子树的深度较小值加1,当一侧子树为空,另一侧不为空时,最小深度应等于不为空子树深度+1,迭代时需分情况讨论。

2025-10-12 10:26:55 375

原创 深度学习-基础知识01

本文摘要: 机器学习是研究如何利用数据获取函数参数的学科,深度学习是其中使用多层神经网络的方法。文章系统介绍了线性回归、softmax回归和多层感知机等基础模型,包括模型结构、损失函数和优化方法。重点讨论了模型选择(验证集、k折交叉验证)、过拟合与欠拟合问题及其解决方案(权重衰减、Dropout)。详细解释了神经网络的正向传播和反向传播机制,以及梯度消失/爆炸问题及其优化方法。同时涵盖了模型参数初始化技术,为深度学习实践提供了理论基础和方法指导。

2025-09-22 23:39:24 548

原创 Windows系统上Linux虚拟机安装指南

本文介绍了使用VMware在windows系统中安装Ubuntu的过程,并简单学习了Linux系统命令及shell脚本语言,是Linux开发的基础内容

2025-09-21 18:35:10 1899

原创 代码随想录-二叉树02-python解法

思路:采用队列实现每层按顺序从左往右进,从左往右出,记录每层需弹出的队列大小,实现输出分层此题层序遍历解法同上。

2025-09-15 23:03:52 871

原创 代码随想录-二叉树01-python解法

本文主要介绍二叉树的前、中、后序遍历的递归、迭代法

2025-09-13 11:39:11 234

原创 代码随想录-栈与队列01-python解法

思路:将一个栈当作输入栈,用于压入 push 传入的数据;另一个栈当作输出栈,用于 pop 和 peek 操作。每次 pop 或 peek 时,若输出栈为空则将输入栈的全部数据依次弹出并压入输出栈,这样输出栈从栈顶往栈底的顺序就是队列从队首往队尾的顺序。python中可用list()实现栈操作。

2025-09-11 16:38:05 362 2

原创 代码随想录-字符串01-python解法

第二步去除多余空格,参考移除数组元素做法,采用双指针法,不同的是,遇到非空格元素时,均判断是否是第一个字母,不是则补上空格,再直接遍历完整个单词;从头匹配发现到f时不匹配了,f之前这部分的字符串(也就是字符串aabaa)的最长相等的前缀 和 后缀字符串是 子字符串aa。前缀表:记录下标i之前(包括i)的字符串中,有多大长度的相同前缀后缀,通过前缀表,可以知道模式串与主串(文本串)不匹配的时候,模式串应该从哪里开始重新匹配。字符串的前缀:不包含最后一个字符的所有以第一个字符开头的连续子串。

2025-09-05 23:48:24 341

原创 代码随想录-哈希表03-python解法

固定a,则题目变为求b+c==-a 两数之和问题,题目要求返回三元组不能重复,故用排序+双指针去重。提前终止代码改为如下形式可适应不同target。

2025-09-05 17:39:59 208

原创 代码随想录-哈希表02-python解法

python直接使用set()可进行取交集操作。

2025-09-05 00:03:51 566

原创 代码随想录-哈希表01-python解法

采用Counter函数简单实现。

2025-09-03 21:42:07 448

原创 代码随想录-链表02-python解法

采用双指针法,指针A遍历链表A,遇到None则遍历链表B,指针B遍历链表B,遇到None则遍历链表A。当指针A和指针B相同时,指针A指向可能为空,代表AB不相交,指针A和指针B均遍历完链表A+B;指针A指向也可能不为空,代表AB相交,指针A和指针B遍历完A+B-A&B部分,指针指向相交点。

2025-09-03 16:33:59 1021 1

原创 代码随想录-链表01-python解法

设计链表的增删改查操作,对比了在函数中使用虚拟头节点和初始化使用虚拟头节点的情况,初始化使用虚拟头节点明显更加简洁。本文主要涉及链表的增删改查基本操作,增加虚拟头节点是链表操作的实用技巧。采用快慢指针实现一遍遍历,解题中没有对n溢出的情况做判断,后续可优化。两两节点交换实际涉及到前后共4个节点,增加虚拟节点可使操作一致。本题使用虚拟头节点统一头节点和其他节点的移除方式。本题使用双指针pre和cur进行原地反转。

2025-09-02 23:17:12 537

原创 代码随想录-数组部分04-python解法

对螺旋矩阵类型题目,需注意取各边界的取值范围,上右边界取满,下左边界限制left<right,top<bottom方式更加通用,另外,本文熟悉了前缀和技巧的使用以及ACM输入输出模式,在python中,使用input()函数读取输入。

2025-09-02 15:39:10 362

原创 代码随想录-数组部分03-python解法

使用滑动窗口法遍历所有子数组,找到长度最小的子数组,窗口和不够时,扩充窗口,即右边界右移,窗口和大于等于目标值时,减小窗口确认最小长度,即左边界右移,python中无穷大用float('inf')表示。

2025-09-01 22:03:38 391

原创 代码随想录-数组部分02-python解法

本文主要展示了双指针法的几种使用,对修改数组元素类题目,可优先考虑双指针法降低时间复杂度和空间复杂度。

2025-08-31 23:59:12 352

原创 代码随想录-数组部分01-python解法

这篇文章总结了二分查找算法的几种典型应用场景和变体。主要内容包括:1)704题标准二分查找解法;2)35题搜索插入位置的边界处理;3)34题查找元素边界的两种解法;4)69题和367题平方根相关问题的二分应用。核心要点在于掌握二分查找的三种处理方式:精确查找、边界确定和插入位置判断,关键要明确循环条件、边界更新规则以及循环结束后的状态处理。文章通过具体题目展示了如何根据问题特点调整二分查找的实现方式。

2025-08-31 18:47:16 355

空空如也

空空如也

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

TA关注的人

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