随笔 - 226,  文章 - 0,  评论 - 4,  阅读 - 30199
08 2023 档案
(根据二叉树总结)递归条款1~程序和递归函数的位置关系
摘要:2全局变量的作用 https://leetcode.cn/problems/minimum-absolute-difference-in-bst/ 以二叉树最小绝对值差为例: 如果将pre=cur;这句话写在所有递归函数之前(一般终止条件为第一行代码)作用不大 1 class Solution { 阅读全文
posted @ 2023-08-31 08:46 小凉拖 阅读(8) 评论(0) 推荐(0) 编辑
感受野
摘要:卷积神经网络中每个网络层输出的特征图中的单个元素映射回原始输入特征中的区域大小,网络层越深,其输出特征的元素对应感受野越大。也就是说输出特征图中单个元素能够看到输入图中多大区域或则说特征图上上某个元素的计算受输入图像上某个区域的影响,这个区域即该元素的感受野。 对于全连接网络而言,其输出中的每一个元 阅读全文
posted @ 2023-08-30 20:43 小凉拖 阅读(157) 评论(0) 推荐(0) 编辑
经典网络
摘要:AlexNet 在单张数据集输入网络之前,要将数据集的所有图片,比如18w张都展开成一个227*227*3的向量,然后求这18w个向量的均值,在将这单张图像展开成227*227*3的向量减去均值向量,再将这个减去均值的向量作为输入。 对抗轻微目标偏移带来的影响: 卷积核的数量越多,代表基元越多,能学 阅读全文
posted @ 2023-08-28 15:09 小凉拖 阅读(33) 评论(0) 推荐(0) 编辑
动态类型和静态类型以及多态
摘要:一个对象的静态类型在编译的时候就确定了。 一个对象的动态类型是指它指向的对象或则它绑定的对象(因此只有指针和引用才有动态类型),一个对象的动态类型只有运行的时候才会确定。 1 Quote* p = new b_Quote; // Quote 是基类,b_Quote 是子类 指针 p 的静态类型是 Q 阅读全文
posted @ 2023-08-28 10:07 小凉拖 阅读(27) 评论(0) 推荐(0) 编辑
二叉搜索树的公共祖先
摘要:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 1 TreeNode* lowestCommonAncestor(TreeNode* root, TreeNode* p, TreeNode* q) { 2 if(root==nullptr||root==p||root==q)retur 阅读全文
posted @ 2023-08-25 20:17 小凉拖 阅读(4) 评论(0) 推荐(0) 编辑
卷积神经网络更新
摘要:基础 高斯核 权重归一化是只核中每一个元素的值都除以这个核中所有元素值的总和,我们将进行权重归一化的模板称为平滑模板。 也就是说对核中心的值归一化的时候,如果增大模板则分子不变分母变大,因此核中心的值归一化后变小,这会导致图像中中心像素的权值变小,因此中心像素越容易受到周围像素的影响,核的平滑效果越 阅读全文
posted @ 2023-08-25 15:05 小凉拖 阅读(98) 评论(0) 推荐(0) 编辑
虚函数的理解
摘要:虚函数指针与虚函数表 阅读全文
posted @ 2023-08-24 10:00 小凉拖 阅读(12) 评论(0) 推荐(0) 编辑
二叉树的最近公共祖先
摘要:235. 二叉搜索树的最近公共祖先 - 力扣(LeetCode) 经验1: 在二叉树中找满足条件的结点的问题一般使用后续遍历,也就是说如果找到了这个结点那么就将它返回给上层,然后层层返回最终返回到根结点 经验2:本题的解题技巧:如果在某一结点找到了p或q,那么就不用往下递归了,直接将这个结点返回,即 阅读全文
posted @ 2023-08-23 23:17 小凉拖 阅读(10) 评论(0) 推荐(0) 编辑
梯度消失
摘要:产生原因 激活函数采用sigmod或双曲正切函数时输入过大或则过小会导致其梯度接近于0 解决方案 采用Relu函数 输入数据归一化(批归一化)是所有输入数据落在梯度不为0的区间 合适的权值初始化策略 阅读全文
posted @ 2023-08-23 10:47 小凉拖 阅读(16) 评论(0) 推荐(0) 编辑
前置++和后置++(--也一样)
摘要:前置++表示先对对象加1,然后返回加1后的值 后置++表示先对对象的运算之前的值的副本保存下来,然后对对象加1,然后返回对象运算之前的副本 以上两点可以看出前置++返回的是对象本身,它是一个左值,后置版本返回的是副本它是一个临时量,它是一个右值,因此可以对前置++的结果进行改变,而不可以对后置++的 阅读全文
posted @ 2023-08-22 22:16 小凉拖 阅读(34) 评论(0) 推荐(0) 编辑
验证二叉搜索树
摘要:98. 验证二叉搜索树 - 力扣(LeetCode) 二叉搜索树: 根节点的左子树的所有元素的值都小于根节点,根节点右子树的所有元素都大于根节点的值。 使用中序遍历的序列一定是一个递增的序列,因此一个二叉树如果中序遍历之后得到的是一个递增序列那么它一定是二叉搜索树。 阅读全文
posted @ 2023-08-20 22:19 小凉拖 阅读(5) 评论(0) 推荐(0) 编辑
二叉搜索树中的搜索
摘要:700. 二叉搜索树中的搜索 - 力扣(LeetCode) 经验1: 情况要考虑周全,开始只想到了找到的情况,而没有去想没找到的情况,漏掉了if(root==nullptr) return root; 经验2: 如果该层想要下一层的返回结果,则在该层定义一个返回值类型的变量,然后在该层接递归的返回值 阅读全文
posted @ 2023-08-20 21:02 小凉拖 阅读(4) 评论(0) 推荐(0) 编辑
合并二叉树
摘要:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 经验1: 程序写在递归函数前面代表压栈的时候实现,也就是说浏览到这个结点的时候实现 程序写在递归函数后面代表弹栈的时候实现,也就是下一次递归结束后在本次递归函数中实现 (补充:删掉递归部分剩下所有的程序都是本层的程序) 那么到底是压栈的时 阅读全文
posted @ 2023-08-19 09:31 小凉拖 阅读(3) 评论(0) 推荐(0) 编辑
内旋外旋万向锁
摘要:内旋(intrinsic rotations) = 旋转轴(rotated axis),右乘(R矩阵在右),应用于SLAM,机械臂运动学。 在新坐标系下,P点的坐标变为P′ 外旋(extrinsic rotations) = 固定轴(也就是将坐标系下的所有点映射到新的坐标系下,求它们在新坐标系下的坐 阅读全文
posted @ 2023-08-18 18:18 小凉拖 阅读(791) 评论(0) 推荐(0) 编辑
平衡二叉树
摘要:110. 平衡二叉树 - 力扣(LeetCode) 确定思路 如果左右子树都是平衡二叉树,并且左右子树的高度相差不超过1,那么就是平衡二叉树,如果左子树不是平衡二叉树也就不用对右子树进行递归了 确定终止条件 应该是遍历到叶子节点,因为叶子节点不能构成二叉树了,因为就没有再往下遍历的必要了 ————— 阅读全文
posted @ 2023-08-17 22:11 小凉拖 阅读(28) 评论(0) 推荐(0) 编辑
二叉树的所有路径
摘要:257. 二叉树的所有路径 - 力扣(LeetCode) 经验1:终止条件的讨论 "if (root == nullptr)return;"的作用 首先写在主要函数中(也就是lecode所给的函数),作用是如果是一个空树传进了主要函数,那么我就让主要函数直接返回,就不要走算法函数了,也就是防空树的作 阅读全文
posted @ 2023-08-17 00:32 小凉拖 阅读(35) 评论(0) 推荐(0) 编辑
自由度的判定
摘要:首先如果已知该矩阵包含哪些参数就直接数哪些参数未知就好了,比如内参矩阵α,β,θ,cx,cy,因此一共5个自由度 如果不清楚该矩阵中包含哪些参数就看看该矩阵可以分解为什么矩阵,比如E=T×R,那么T是3个自由度,R是3个自由度,然后E的行列式为零增加一个约束,则5个自由度 注意当以分解判断自由度时该 阅读全文
posted @ 2023-08-16 15:15 小凉拖 阅读(367) 评论(0) 推荐(0) 编辑
路径总和
摘要:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 经验1: 如果一段程序写在递归的上方,代表这一层函数压栈时(也就是这层递归开始运行时)运行这段程序 int fun(int n) { static int i = 0; if (n == 1) return 1; if (n == 4) 阅读全文
posted @ 2023-08-16 09:23 小凉拖 阅读(9) 评论(0) 推荐(0) 编辑
卷积神经网络
摘要:如果一张28*28*1的图像作为输入,那么传统的神经网络输入的是向量,而卷积神经网络输入的是三维矩阵 卷积层 卷积层作用是特征提取,池化层的作用是压缩特征,注意卷积层的卷积策略是不对图像的最外层的像素进行处理 颜色通道的处理策略 3个颜色通道,每个颜色通道分别做计算,再把每个通道卷积结果相加 卷积的 阅读全文
posted @ 2023-08-14 11:49 小凉拖 阅读(80) 评论(0) 推荐(0) 编辑
二叉树的层序遍历
摘要:int findBottomLeftValue(TreeNode* root) { queue<TreeNode*>qu; if(root!=nullptr) qu.push(root); int size=0; int result=0; while(!qu.empty()){ TreeNode* 阅读全文
posted @ 2023-08-13 20:50 小凉拖 阅读(7) 评论(0) 推荐(0) 编辑
递归的进一步思考
摘要:翻转二叉树: 首先要想整体思路: 翻转一个二叉树就是先将左子树和右子树翻转,然后对作用左子树翻转函数(对左子树中的所有左右结点翻转),对右子树进行翻转函数 那么递归部分如下: swap(node->left ,node->right); reverse(node->left); reverse(no 阅读全文
posted @ 2023-08-11 23:25 小凉拖 阅读(7) 评论(0) 推荐(0) 编辑
左叶子节点之和
摘要:首先将非终止条件,非递归函数部分叫做单层递归。 思考过程如下: 首先想总的思路:就是找到左子树的左叶子节点将它的值加到sum上,然后找到右子树的左叶子结点将它的值加到sum上,最后将它们的值相加就是左叶子结点之和,由此我们可以写出递归部分 1 leftsum(node->left, sum); 2 阅读全文
posted @ 2023-08-10 23:13 小凉拖 阅读(28) 评论(0) 推荐(0) 编辑
过拟合与正则化
摘要:过拟合产生原因: 从训练集和测试集的角度来讲就是:模型几乎完全符合符合训练集(只是记住了训练数据,而没有真正学习到数据的特征),甚至将噪声也作为拟合模型的数据,这就导致了在训练集上效果很好,在测试集上效果很差,也就是加入一个新数据的时候这个新数据就不符合这个模型了(这也是所谓的泛化能力很差) 从模型 阅读全文
posted @ 2023-08-09 14:37 小凉拖 阅读(63) 评论(0) 推荐(0) 编辑
深度学习(神经网络)
摘要:基础概念 数据集划分 首先人为给定一组包括λ在内的,也就给定了一组模型,然后我们再确定参数的初值并带入训练集去优化每个模型的参数,然后将这些模型分别用验证集验证,看看哪个超参数对应的模型最好就将其带入测试集评价我现在能拿到最好模型的性能。 交叉验证 比如说做一个男女分类问题,一个模型对于男生的分类正 阅读全文
posted @ 2023-08-08 14:29 小凉拖 阅读(73) 评论(0) 推荐(0) 编辑
15.在main执⾏之前和之后执⾏的代码可能是什么
摘要:之前:初始化全局变量和静态变量 初始化全局对象(构造函数) 将argc和argv传参 之后: 全局对象的析构 阅读全文
posted @ 2023-08-07 21:45 小凉拖 阅读(5) 评论(0) 推荐(0) 编辑
二叉树的最小深度
摘要:所以,如果左子树为空,右子树不为空,说明最小深度是 1 + 右子树的深度。 反之,右子树为空,左子树不为空,最小深度是 1 + 左子树的深度。 最后如果左右子树都不为空,返回左右子树深度最小值 + 1 。 1 int minshendu(Node* node) { 2 if (node == nul 阅读全文
posted @ 2023-08-03 12:11 小凉拖 阅读(12) 评论(0) 推荐(0) 编辑
求二叉树的最大深度
摘要:此为有返回值的递归问题 先确定终止条件(如果一个树为空树,它的高度就是0,我们直接返回0,根本不用递归) 写出通式(1+max(左子树的最大深度,右子树的最大深度)规模更小的子问题),将通式写在return里面 1 int maxshendu(Node* node) { 2 if (node == 阅读全文
posted @ 2023-08-03 11:47 小凉拖 阅读(12) 评论(0) 推荐(0) 编辑
对称二叉树
摘要:1 bool compare(Node* left, Node* right) { 2 if (left == NULL && right != NULL) return false; 3 else if (left != NULL && right == NULL) return false; 4 阅读全文
posted @ 2023-08-02 17:29 小凉拖 阅读(4) 评论(0) 推荐(0) 编辑
翻转二叉树
摘要:层序遍历: 思路:使用层序遍历的方法:将根节点入队,然后将根节点的左节点和右节点交换,每次for循环都执行“如果左节点不为空则将左节点入队,如果右节点不为空就将右节点入队,队头出队,将队头的左右结点交换,然后队头的左右节点不为空,将队头的左右结点入队。 1 void ceng(Node* node, 阅读全文
posted @ 2023-08-02 17:28 小凉拖 阅读(10) 评论(0) 推荐(0) 编辑
二叉树遍历
摘要:递归实现: 前序遍历 然后对左子树进行先序遍历,再对右子树进行先序遍历,在这些操作之前先将根节点装进容器中 1 void frontfind(Node* node, vector<int>& vec) { 2 if (node == nullptr) { 3 return; 4 } 5 //非终止条 阅读全文
posted @ 2023-08-02 15:01 小凉拖 阅读(12) 评论(0) 推荐(0) 编辑

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示