-
【数据结构】红黑树的实现
所属栏目:[安全] 日期:2021-04-02 热度:86
Talk is cheap,show me the code. 红黑树真是抄了好久才抄完,要是有时间真应该重新写一下。 #ifndef _RED_BLACK_TREE_HPP_#define _RED_BLACK_TREE_HPP_#include iomanip#include iostreamusing namespace std;enum RBTColor{RED,BLACK};template class Tcl[详细]
-
《数据结构》第七章 查找学习指南
所属栏目:[安全] 日期:2021-04-02 热度:55
?? 第七章??查找 学习指南 ? ? ? 本书的前几章,讲完了几种数据结构的存储和常规操作实现。本章节专门讨论一查找技术。 ? ? ? 查找操作在生产生活中常见,如搜索引擎,在自己个人通信录中查找一个电话号码等。 一 、学习目的 ????? ? 本章学习,在前面的各种[详细]
-
《数据结构》第七章 查找 学习问题回收站
所属栏目:[安全] 日期:2021-04-02 热度:153
?? ?????????? 各位,大家好!第六章 图 的学习结束了 。 ????????? 本周开始学习第七章图,第七章准备使用1周来学习,具体时间是第15周,这里是本章问 题回收站,希望大家认真预习,积极思考,相互讨论。将不理解的问题在在本博文后面评论中提出,在提问和[详细]
-
《数据结构》二叉排序树查找性能总结
所属栏目:[安全] 日期:2021-04-02 热度:97
二叉排序树查找性能分析 1. 一棵二叉查找树的平均查找长度(ASL),见下图公式(1)。2. 一棵满二叉排序树的平均查找长度,见下图公式(2)。 3. 一棵斜二叉排序树的平均查找长度,见下图公式(3)。 ? ? ? ? ? ? 由上面可以分析得知,对于二叉排序查找性能[详细]
-
《数据结构》图floyd算法示例-大家一定要看
所属栏目:[安全] 日期:2021-04-02 热度:64
图的只操作复杂,但很在意义和意思。这里根据课本精华,实现一个图的最短路径算法,请参考。 准备计算课本P172,图6-13。如下: #include iostream #include string #includeiomanip //引入输入输出格式头文件using namespace std; const int Maxsize = 10;[详细]
-
《数据结构》问题回答:why100个结点的完全二叉树叶子数为50.
所属栏目:[安全] 日期:2021-04-02 热度:168
? ?有同学问:为什么具有100个结点的完全二叉树的叶子节点数为50? ? ? 这个问题很有意思,谢谢这同同学的提问。现在分析一下。 ? ?如果一棵完全二叉树有100个结点,我们根据以下两点: ? ? ?1.二叉树的性质:深度为k的二叉树,最多有2的k次方-1个结点。 ? ?[详细]
-
《数据结构》完全二叉树的叶子数讨论
所属栏目:[安全] 日期:2021-04-02 热度:111
? ? ?完全二叉树是一种很特别的树,很多性质和特性值得我们关注。下面,就来关注一下叶子数目。 ? ? 如果一树是是完全二叉树, 结点数为n,叶子是多少呢? 现设结点总数为n,度为2和0结点数分别为n2和n0。下面讨论叶子数目。即计算 n0值。 ? ? ?我们根据完全[详细]
-
【数据结构】2.java源码关于LinkedList
所属栏目:[安全] 日期:2021-04-01 热度:93
关于LinkedList的源码关注点 1.从底层数据结构,扩容策略 2.LinkedList的增删改查 3.特殊处理重点关注 4.遍历的速度,随机访问和iterator访问效率对比 ? 1.从底层数据结构,扩容策略 构造函数不做任何操作,只要再add的时候进行数据初始化操作,以操作推动逻[详细]
-
【数据结构】【状态压缩】刷题
所属栏目:[安全] 日期:2021-04-01 热度:88
没什么别的,就希望自己记住那些函数 1floyd+bitset优化 #includecstdio #include cstdlib #include bitset using namespace std; int n; const int N= 2003 ; char s[N]; bitset N bs[N]; int main(){ scanf( " %d " , n); for ( int i= 1 ;i=n;i++ ) { sca[详细]
-
【数据结构】维护队列
所属栏目:[安全] 日期:2021-04-01 热度:104
T69293 维护队列 题目描述 Alice 给 Bob 布置了很多工作,他忙的不可开交,决定按照“先进先出(FIFO)”的顺序依次处理这些工作。但是处理过程中,Bob 意识到这种顺序可能不是最优的,因此他会选择性的把某些工作延后。 抽象来说,你需要维护一个队列,支持三[详细]
-
【数据结构】静态链表的实现(C语言描述)
所属栏目:[安全] 日期:2021-04-01 热度:164
#include stdio.h#include "stdlib.h"#define OK 1#define ERROR 0#define TRUE 1#define FALSE 0#define MAXSIZE 1000 // 定义线性表最大容量typedef int Status;typedef int ElemType;// 定义静态链表的存储结构typedef struct{ ElemType data; // 数据域[详细]
-
【数据结构】莫队(二)
所属栏目:[安全] 日期:2021-04-01 热度:162
今天的内容是 带修莫队 。 例题:P1903 [国家集训队]数颜色 / 维护队列 题目描述 墨墨购买了一套N支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问。墨墨会向你发布如下指令: 1、 Q L R代表询问你从第L支画笔到第R支画笔中共有几种不同[详细]
-
【数据结构】二叉树的创建与遍历
所属栏目:[安全] 日期:2021-04-01 热度:187
#include stdio.h#include string.h#include stdlib.h#include math.h#define OK 1#define ERROR 0#define TRUE 1#define FALSE 0#define MAXSIZE 100 /* 存储空间初始分配量 */typedef int Status;typedef char TElemType; /* 假定二叉树的元素都是字符类型[详细]
-
【数据结构】线段树(Segment Tree)
所属栏目:[安全] 日期:2021-04-01 热度:117
? 假设我们现在拿到了一个非常大的数组,对于这个数组里面的数字要反复不断地做两个操作。 1、(query)随机在这个数组中选一个区间,求出这个区间所有数的和。 2、(update)不断地随机修改这个数组中的某一个值。 时间复杂度: 枚举 : 枚举L~R的每个数并[详细]
-
『数据结构』线段树
所属栏目:[安全] 日期:2021-03-31 热度:196
线段树原理 线段树,类似区间树,它在各个节点保存一条线段(数组中的一段子数组),主要用于高效解决连续区间的动态查询问题,由于二叉结构的特性,它基本能保持每个操作的复杂度为 (O(logn)) 。 线段树的每个节点表示一个区间,子节点则分别表示父节点的[详细]
-
【数据结构】【CF1073D】 Berland Fair
所属栏目:[安全] 日期:2021-03-31 热度:71
Description 给定 (n) 个商店,他们围成一个圆圈,按照顺时针从 (1) 到 (n) 编号。你有 (T) 元钱,从 (1) 号点开始按照顺时针方向走,每到一个商店,只要钱够就必须买这个商店的物品。商店中物品是无限的,即多次到达可能多次购买。求会买多少件物[详细]
-
【数据结构】 最小生成树(四)——利用kruskal算法搞定例题×3+
所属栏目:[安全] 日期:2021-03-31 热度:58
在这一专辑(最小生成树)中的上一期讲到了prim算法,但是prim算法比较难懂,为了避免看不懂,就先用kruskal算法写题吧,下面将会将三道例题,加一道变形,以及一道大水题,水到不用高级数据结构,建树,画图,最短路径什么的,统统不需要。废话不多说,直接[详细]
-
《数据结构》中的英语名词
所属栏目:[安全] 日期:2021-03-31 热度:198
data 数据data element 数据元素data item 数据项data object 数据对象data structure 数据结构ADT (Abstruct Date Type) 抽象数据类型alogrithm 算法correctness 正确性readability 可读性robustness 健壮性frequency count 频度asymptotic time complexity[详细]
-
【数据结构】二、线性表
所属栏目:[安全] 日期:2021-03-31 热度:188
2.1. 定义与特点 定义 ? 具有相同数据类型的 (n(ngeq0)) 个数据元素的有限序列。 (n) 是表长,当 (n=0) 时该线性表是一个空表。若用 (L) 表示线性表,一般表示为: [ L=(a_1,a_2,...,a_i,a_{i+1},a_n) ] 特点 元素个数有限 元素具有逻辑上的顺序[详细]
-
【数据结构】第二章小结
所属栏目:[安全] 日期:2021-03-31 热度:55
ps:第一次用博客园写,记录第一次 一、数据结构第二章主要为:顺序表和链表的构造及其增删查改的一些基本操作,以及粗略计算它们的时间or空间的复杂度。 ? ? ? 1、顺序表: ? ? ? ? ? ? ? ? ? ? ? ? ?(1)? 特点:逻辑结构上相邻,物理存储上也是相邻的,[详细]
-
【数据结构】 单向链表
所属栏目:[安全] 日期:2021-03-31 热度:192
【1】错误:H-next =NULL 或其他“让指针指向空”的语句运行报错: “ ‘NULL‘ : undeclared identifier ”? 、 “ ‘=‘ : cannot convert from ‘int‘ to ‘struct node *‘? ” 原因:未引入头文件 #include “stdio.h”?,把NULL定义为一个空地址是在 s[详细]
-
[JZOJ6089]【CodeChef 2014 April Challenge】Final Battle of C
所属栏目:[安全] 日期:2021-03-31 热度:96
Description (n,q,Vleq 100000,w_ileq 10^9) Solution 又是一道大数据结构 由于有一个下取整,这就导致了不同时间的修改值是不能简单的直接加在一起的。 容易发现,1操作的影响只会影响到距离不超过log的点。 这样我们很容易得到一个 (qlog nlog ^2V[详细]
-
【数据结构】红黑树与跳表-(SortSet)-(TreeMap)-(TreeSet)
所属栏目:[安全] 日期:2021-03-31 热度:114
SortSet 有序的Set,其实在Java中TreeSet是SortSet的唯一实现类,内部通过TreeMap实现的;而TreeMap是通过红黑树实现的;而在Redis中是通过跳表实现的; SkipList 跳表,思想类似平衡二叉树,但又不一样;下面摘了一个介绍: skiplist数据结构简介(摘自: h[详细]
-
《数据结构》实验二: 线性表实验
所属栏目:[安全] 日期:2021-03-31 热度:130
《数据结构》实验二: ????? 线性表实验 一. . 实验目的 ????? 巩固线性表的数据结构,学会线性表的应用。 1. 回顾线性表的逻辑结构,线性表的物理存储结构和常见操作。 2. 学习运用线性表的知识来解决实际问题。 3. 进一步巩固程序调试方法。 4. 进一步巩[详细]
-
【数据结构】红黑树
所属栏目:[安全] 日期:2021-03-31 热度:190
? ? ? ? ?红黑树是一种二叉平衡树,在每一个结点增加了一个存储位表示结点的颜色,以维持它的平衡; 红黑树性质 (1)红黑树结点有如下域:color,key,left,right,p;我们把这些NIL结点是为指向外结点的指针,可以自己定义; (2)每一个结点不是红的就是[详细]