数据结构与算法
文章平均质量分 90
数据结构与算法
Easenyang
java
展开
-
线段树模板(Java)
线段树是一种二叉搜索树,与区间树相似,它将一个区间划分成一些单元区间,每个单元区间对应线段树中的一个叶结点。它的主要优势是对于区间求和、区间求最大值、区间修改和单点修改的速度快,时间复杂度能达到O(logN)O(logN)O(logN)。 若以常规的方法在数组中进行区间求和等操作,时间复杂度会达到O(n)O(n)O(n),若操作的次数量非常大,那么就很容易超时。线段树的优势就体现出来了 线段树的实现基于一维数组,用数组下标 2∗k+12 * k +12∗k+1 的元素代表左儿子,用下标 2∗k+原创 2022-12-06 13:03:54 · 2408 阅读 · 2 评论 -
蓝桥杯应该参加吗?如何准备蓝桥杯?
第十四届蓝桥杯已经开始报名了,很多同学都在纠结到底要不要参加。会不会特别难。我可以很确定地说,真的不难。我学校是双非本科,有的大一、大二的学弟学妹都在十三届蓝桥杯中取得了省一省二,当然最多的是省三。接下来就谈谈我对蓝桥杯的看法。原创 2022-10-10 22:31:08 · 48330 阅读 · 52 评论 -
【图的三大存储方式】只会用邻接矩阵就out了
掌握图的三大存储方式:邻接矩阵、邻接表、原创 2022-05-29 11:25:54 · 2601 阅读 · 0 评论 -
数据结构之顺序表和链表的比较(详解,附图)
两大线性表的区别原创 2022-05-22 12:11:02 · 4701 阅读 · 1 评论 -
数据结构之链表(Java实现)
数据结构中线性表的重要知识之一原创 2022-05-18 21:18:33 · 8115 阅读 · 15 评论 -
区间dp(含模板及例题)
概述:区间dp:就是对于区间的一种动态规划,对于某个区间,它的合并方式可能有很多种,我们需要去枚举所有的方式,通常是去枚举区间的分割点,找到最优的方式(一般是找最少消耗)。例如:对于区间【i,j】,它的合并方式有很多种,可以是【i,i+1】和【i+2,j】也可以是【i,k】和【k+1,j】(其中i<k<j)……在合并区间时,一般会有消耗(根据题意去计算),状态转移方程就可以表示成:dp[i][j] = min(dp[i][j], dp[i,k] + dp[k+1][j]原创 2022-05-16 11:42:19 · 6269 阅读 · 14 评论 -
数据结构之顺序表(Java实现)
顺序表概述二级目录二级目录二级目录二级目录顺序表概述简介:顺序表是在计算机内存中以数组的形式保存的线性表,线性表的顺序存储是指用一组地址连续的存储单元依次存储线性表中的各个元素、使得线性表中在逻辑结构上相邻的数据元素存储在相邻的物理存储单元中,即通过数据元素物理存储的相邻关系来反映数据元素之间逻辑上的相邻关系,采用顺序存储结构的线性表通常称为顺序表。顺序表是将表中的结点依次存放在计算机内存中一组地址连续的存储单元中。顺序表存储示意图:二级目录二级目录二级目录二级目录...原创 2022-05-10 16:43:54 · 823 阅读 · 7 评论