LeetCode 450.删除二叉搜索树中的节点和669.修建二叉搜索树思路对比 及heap-use-after-free问题解决
2024-08-06 02:03 | 分类:软件设计 | 评论:0 次 | 浏览: 166
给定一个二叉搜索树的根节点和一个值,删除二叉搜索树中的对应的节点,并保证二叉搜索树的性质不变。返回二叉搜索树(有可能被更新)的根节点的引用。...
【数据结构】详解堆排序当中的topk问题(leetcode例题)
2024-08-06 02:02 | 分类:软件设计 | 评论:0 次 | 浏览: 177
215. 数组中的第K个最大元素。Top K 问题是一个经典的问题,在计算机科学中,它的目标是在一组数据中找到前 K 个最大或最小的元素。这...
二叉树(中)+Leetcode每日一题——“数据结构与算法”“剑指Offer55-I. 二叉树的深度”“100.相同的树”“965.单值二叉树”
2024-08-06 02:02 | 分类:软件设计 | 评论:0 次 | 浏览: 189
二叉树
《LeetCode热题100》---<5.③普通数组篇五道>
2024-08-06 02:00 | 分类:软件设计 | 评论:0 次 | 浏览: 185
本篇博客讲解LeetCode热题100道普通数组篇中的五道题第五道:缺失的第一个正数(困难)
平衡二叉树,红黑树,B树和B+树的区别及其应用场景
2024-08-06 01:59 | 分类:软件设计 | 评论:0 次 | 浏览: 164
自适应哈希索引是Innodb引擎的一个特殊功能,当它注意到某些索引值被使用的非常频繁时,会在内存中基于B-Tree所有之上再创建一个哈希索引...
瑞_数据结构与算法_B树
2024-08-06 01:59 | 分类:软件设计 | 评论:0 次 | 浏览: 167
本文章为瑞_系列专栏之《数据结构与算法》的B树篇。B树(B-Tree)结构是一种高效存储和查询数据的方法,B树结构非常适合应用于磁盘等大型存...
为什么要用B+树
2024-08-06 01:58 | 分类:软件设计 | 评论:0 次 | 浏览: 147
在节点分裂和合并时,IO操作少:B+树的叶子节点的大小是固定的,而且节点的大小一般都会设置为一页的大小,这就使得节点分裂和合并时,IO操作很...
【数据结构】查找(顺序查找、二分查找、索引顺序查找、二叉排序树、平衡排序树、B树、B+树、哈希表)
2024-08-06 01:58 | 分类:软件设计 | 评论:0 次 | 浏览: 167
查找(顺序查找、二分查找、索引顺序查找、二叉排序树、平衡排序树、B树、B+树、哈希表)
h2database源码解析-将B+树刷新到磁盘
2024-08-06 01:57 | 分类:软件设计 | 评论:0 次 | 浏览: 140
h2的表、索引、undo log都是使用B+树存储的,这些数据存储到B+树上之后,需要将树从内存再刷新到磁盘上。因为树刷新到磁盘,涉及到磁盘...
机器学习 - 决策树
2024-08-06 01:55 | 分类:软件设计 | 评论:0 次 | 浏览: 135
决策树是一种监督学习算法,主要用于分类和回归任务。它通过学习从数据特征到输出标签的映射规则,构建一个树形结构。在分类问题中,决策树的每个叶节...
决策树的性能评估:如何比较不同模型的优劣?
2024-08-06 01:55 | 分类:软件设计 | 评论:0 次 | 浏览: 150
首先,我们需要根据问题的特性和数据的分布来选择合适的评估指标。例如,在分类问题中,我们可能既希望模型有较高的准确率,又希望模型对正类的预测具...
金融机器学习方法:决策树与随机森林
2024-08-06 01:54 | 分类:软件设计 | 评论:0 次 | 浏览: 170
决策树是一个树状模型,用于表示决策过程或概率事件过程。在每一个内部节点上,它都会对某个属性进行测试,根据测试结果,进一步沿着分支进行决策,直...
算法·决策树
2024-08-06 01:53 | 分类:软件设计 | 评论:0 次 | 浏览: 156
决策树是一种常用的机器学习算法,它通过将复杂的决策过程分解成一系列简单的决策步骤,对数据进行分类或回归分析。下文将介绍决策树。
ID决策树的构造原理
2024-08-06 01:52 | 分类:软件设计 | 评论:0 次 | 浏览: 182
有的同学可能在大学学习过一门课程叫《数据结构》,里面有一个重要的结构就是“树”,和现实生活中的树一样,树的主要由四部分树根树干树枝树叶组成,...
深入浅出:可视化理解揭示决策树与梯度提升背后的数学原理
2024-08-06 01:50 | 分类:软件设计 | 评论:0 次 | 浏览: 148
在本文中,我们尝试对决策树的进行可视化解释。决策树是一种由若干节点组成的非参数模型。每个节点本质上是一个线性分类器,但当它们结合在一起时,可...
动态规划专项讲解
2024-08-06 01:48 | 分类:软件设计 | 评论:0 次 | 浏览: 106
先设定dp[i]表示前i个数的最长上升子序列。每次转移完成后,对于第i+1次转移 我们只需要第i-1项(原本的dp[1])和第i项(原本的d...
算法基础复盘笔记Day10【动态规划】—— 线性DP
2024-08-06 01:47 | 分类:软件设计 | 评论:0 次 | 浏览: 101
最长上升子序列这道题的时间复杂度是 O(n^2),用在这道题会超时。如果把内层循环改为 二分查找,就能把内存查找时间降为 logn,则时间复...
【Leetcode】十八、动态规划:不同路径 + 全1的最大正方形
2024-08-06 01:46 | 分类:软件设计 | 评论:0 次 | 浏览: 102
因为只能向下、向右走,所以从起始点走到点(R,C),路径数等于,以起始点到点(R,C)为对角线的矩形里,到点(R,C)左侧点的路径数 + 到...
David Silver Lecture 3: planning by dynamic programming
2024-08-06 01:45 | 分类:软件设计 | 评论:0 次 | 浏览: 72
定义:核心思想:将复杂问题拆解成简单子问题。
动态规划之背包DP及其优化
2024-08-06 01:44 | 分类:软件设计 | 评论:0 次 | 浏览: 82
背包(Knapsack)问题是经典的动态规划问题,也很有实际价值。而最经典的背包问题有三种:01背包,多重背包,完全背包。
动态规划——矩阵连乘积问题(个人学习用)
2024-08-06 01:44 | 分类:软件设计 | 评论:0 次 | 浏览: 74
(1).找出最优解的性质(2).动态规划方程(3).自底向上计算最优值。
动态规划—摘花生问题
2024-08-06 01:43 | 分类:软件设计 | 评论:0 次 | 浏览: 64
不能从当前点 去找下一个最优点 (贪心思想 当前局部最优解 不能代表全局最优解),后面未知路径可能有很大的数值,当前的选择对最终结果产生了影...
分治法(快速排序、归并排序)
2024-08-06 01:42 | 分类:软件设计 | 评论:0 次 | 浏览: 65
4.快速排序重在划分,分解:数组A[p..r]被划分为两个子数组A[p. .q-1]和A[q+1,r],使得A[q]为大小居中的数,左侧A[...
数据结构 排序算法——选择排序与堆排序_直接选择排序和堆序的区别(1)
2024-08-06 01:39 | 分类:软件设计 | 评论:0 次 | 浏览: 170
对于堆排序,我们是分成了三个部分,第一部分是先去实现一个向下调整算法,接着第二部分我们需要去建堆,将这个左右子树都调整为大顶堆或是小顶堆,第...
算法分析与设计第三章——(排序算法)
2024-08-06 01:39 | 分类:软件设计 | 评论:0 次 | 浏览: 68
蛮力排序:冒泡,插入,选择排序分治排序算法:树形选择排序、快速排序、归并排序、堆排序、计数排序、桶排序一系列问题
数据结构之排序算法(三)
2024-08-06 01:38 | 分类:软件设计 | 评论:0 次 | 浏览: 174
归并排序(Merge sort)是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常...