-
《数据结构》第六章 图 相关概念导图
所属栏目:[安全] 日期:2021-04-03 热度:148
第六章, 是一个概念众多,且容易混淆,可能有些 “图” 晕。在此画一个导图,简化一个本章节的主要名词术语。请大家好好,理解各个概念的内含和一些概念间关系。[详细]
-
《数据结构》第六章 图 教学设计
所属栏目:[安全] 日期:2021-04-03 热度:168
? ? ?第六章图,是很重要也是最难的一章了,当然有前面的基础,学习也不会困难。本章节主要是概念多,图结构复杂。本设计也属于迟到的了。抱歉。 本章学习总时问分为 2周,共四次课来 来学习。两次上课(13周和14周),一次实验(14周,实验不给课内时间,请[详细]
-
《数据结构》课程设计题目
所属栏目:[安全] 日期:2021-04-03 热度:117
??????????????????????? 〈数据结构〉课程设计综合题目?? --信管班组做 一、实训目的 通过课程设计,学会运用数据结构知识,针对具体应用,自己设计合理数据结构,确定存储结构,并能设计具体操作算法,选择使用具体语言进行实现。掌握 C++ 较复杂程序的[详细]
-
《数据结构》MST性质证明
所属栏目:[安全] 日期:2021-04-03 热度:137
大家好,第六章图,第6.3小节最小生成树。MST性质的证明,课本用一了大段来证明,可能不是很便于看明白,这里给出一个网友的证明,供大家参考。 文字来自下面链接,http://fdcwqmst.blog.163.com/blog/static/164061455201010392833100/。并表示感谢。 MST性[详细]
-
《数据结构》第六章 图实验
所属栏目:[安全] 日期:2021-04-03 热度:162
《数据结构》实验六:?? 图的实验 一..实验目的 ???? 巩固图的相关知识。掌握图的主要存储方法和遍历方法,学会运用图的知识解决实际问题。 1.图的逻辑结构和存储方法,清楚掌握图的遍历操作。 2.掌握图的存储方法的实现代码。 3.学习图的相关知识来解决实[详细]
-
《数据结构》图存储遍历示例
所属栏目:[安全] 日期:2021-04-03 热度:74
??? 大家好,图是一种复杂的结构,存储结构较复杂,下面是一个具体图的邻接矩阵存储方法示例,并实现了深度优先和广度优先遍历输出。 #includeiostreamusing namespace std;const int MaxSize=10;template class DataTypeclass MGraph{public: MGraph(DataTy[详细]
-
【数据结构】红黑树的实现
所属栏目:[安全] 日期:2021-04-03 热度:104
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-03 热度:90
?? 第七章??查找 学习指南 ? ? ? 本书的前几章,讲完了几种数据结构的存储和常规操作实现。本章节专门讨论一查找技术。 ? ? ? 查找操作在生产生活中常见,如搜索引擎,在自己个人通信录中查找一个电话号码等。 一 、学习目的 ????? ? 本章学习,在前面的各种[详细]
-
《数据结构》第七章 查找 学习问题回收站
所属栏目:[安全] 日期:2021-04-03 热度:140
?? ?????????? 各位,大家好!第六章 图 的学习结束了 。 ????????? 本周开始学习第七章图,第七章准备使用1周来学习,具体时间是第15周,这里是本章问 题回收站,希望大家认真预习,积极思考,相互讨论。将不理解的问题在在本博文后面评论中提出,在提问和[详细]
-
《数据结构》二叉排序树查找性能总结
所属栏目:[安全] 日期:2021-04-03 热度:154
二叉排序树查找性能分析 1. 一棵二叉查找树的平均查找长度(ASL),见下图公式(1)。2. 一棵满二叉排序树的平均查找长度,见下图公式(2)。 3. 一棵斜二叉排序树的平均查找长度,见下图公式(3)。 ? ? ? ? ? ? 由上面可以分析得知,对于二叉排序查找性能[详细]
-
《数据结构》图floyd算法示例-大家一定要看
所属栏目:[安全] 日期:2021-04-03 热度:154
图的只操作复杂,但很在意义和意思。这里根据课本精华,实现一个图的最短路径算法,请参考。 准备计算课本P172,图6-13。如下: #include iostream #include string #includeiomanip //引入输入输出格式头文件using namespace std; const int Maxsize = 10;[详细]
-
《数据结构》问题回答:why100个结点的完全二叉树叶子数为50.
所属栏目:[安全] 日期:2021-04-03 热度:61
? ?有同学问:为什么具有100个结点的完全二叉树的叶子节点数为50? ? ? 这个问题很有意思,谢谢这同同学的提问。现在分析一下。 ? ?如果一棵完全二叉树有100个结点,我们根据以下两点: ? ? ?1.二叉树的性质:深度为k的二叉树,最多有2的k次方-1个结点。 ? ?[详细]
-
《数据结构》完全二叉树的叶子数讨论
所属栏目:[安全] 日期:2021-04-03 热度:68
? ? ?完全二叉树是一种很特别的树,很多性质和特性值得我们关注。下面,就来关注一下叶子数目。 ? ? 如果一树是是完全二叉树, 结点数为n,叶子是多少呢? 现设结点总数为n,度为2和0结点数分别为n2和n0。下面讨论叶子数目。即计算 n0值。 ? ? ?我们根据完全[详细]
-
【数据结构】维护队列
所属栏目:[安全] 日期:2021-04-03 热度:98
T69293 维护队列 题目描述 Alice 给 Bob 布置了很多工作,他忙的不可开交,决定按照“先进先出(FIFO)”的顺序依次处理这些工作。但是处理过程中,Bob 意识到这种顺序可能不是最优的,因此他会选择性的把某些工作延后。 抽象来说,你需要维护一个队列,支持三[详细]
-
【数据结构】静态链表的实现(C语言描述)
所属栏目:[安全] 日期:2021-04-03 热度:191
#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-03 热度:168
今天的内容是 带修莫队 。 例题:P1903 [国家集训队]数颜色 / 维护队列 题目描述 墨墨购买了一套N支彩色画笔(其中有些颜色可能相同),摆成一排,你需要回答墨墨的提问。墨墨会向你发布如下指令: 1、 Q L R代表询问你从第L支画笔到第R支画笔中共有几种不同[详细]
-
【数据结构】二叉树的创建与遍历
所属栏目:[安全] 日期:2021-04-03 热度:117
#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-03 热度:136
? 假设我们现在拿到了一个非常大的数组,对于这个数组里面的数字要反复不断地做两个操作。 1、(query)随机在这个数组中选一个区间,求出这个区间所有数的和。 2、(update)不断地随机修改这个数组中的某一个值。 时间复杂度: 枚举 : 枚举L~R的每个数并[详细]
-
【数据结构】2.java源码关于LinkedList
所属栏目:[安全] 日期:2021-04-03 热度:77
关于LinkedList的源码关注点 1.从底层数据结构,扩容策略 2.LinkedList的增删改查 3.特殊处理重点关注 4.遍历的速度,随机访问和iterator访问效率对比 ? 1.从底层数据结构,扩容策略 构造函数不做任何操作,只要再add的时候进行数据初始化操作,以操作推动逻[详细]
-
【数据结构】【状态压缩】刷题
所属栏目:[安全] 日期:2021-04-03 热度:177
没什么别的,就希望自己记住那些函数 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[详细]
-
队列-java代码
所属栏目:[安全] 日期:2021-04-02 热度:144
public class QueueDemo { private int maxSize; long [] queueArray; // 队列的头,实际是数组的尾 header; 队列的尾,实际是数组的头 footer; nElems; public QueueDemo( size){ maxSize = size; queueArray = new [maxSize]; header = 0 ; footer = -1 ;[详细]
-
算法图解之散列表
所属栏目:[安全] 日期:2021-04-02 热度:149
散列函数 专业术语表述,”将输入映射到数字”。 散列函数具有如下要求: (1)它必须是一致的。 如你输入blog得到的是wordpress,那么每次输入blog,得到的都必须为wordpress。 (2)它应将不同的输入映射到不同的数字。 如,如果一个散列函数不管输入是什么都返[详细]
-
算法图解之二分查找
所属栏目:[安全] 日期:2021-04-02 热度:184
简单查找,如下图: ? 从图可知那个眼镜男从1开始猜,猜到100,大家都知道这种猜法最终都会得到答案,就是时间问题而已。100毕竟是这个列表的最大长度。但是换言之,如果是一万、百万、上千亿呢?那么这种猜法虽然能够得到答案,但是时间方面的成本将会非常大[详细]
-
lt;数据结构与算法分析gt;读书笔记--运行时间中的对数及其分析
所属栏目:[安全] 日期:2021-04-02 热度:117
分析算法最混乱的方面大概集中在对数上面。我们已经看到,某些分治算法将以O(N log N)时间运行。此外,对数最常出现的规律可概括为下列一般法则: 如果一个算法用常数时间(O(1))将问题的大小削减为其一部分(通常是1/2),那么该算法就是O(logN)。另一方面,如[详细]
-
lt;数据结构与算法分析gt;读书笔记--最大子序列和问题的求解
所属栏目:[安全] 日期:2021-04-02 热度:121
? 现在我们将要叙述四个算法来求解早先提出的最大子序列和问题。 第一个算法,它只是穷举式地尝试所有的可能。for循环中的循环变量反映了Java中数组从0开始而不是从1开始这样一个事实。还有,本算法并不计算实际的子序列;实际的计算还要添加一些额外的代码[详细]