-
《数据结构》第六章 图 学习指南
所属栏目:[安全] 日期:2021-04-04 热度:59
第六章 ?图 学习指南 ? ? ? 本章的是全书的重点和难点。 ? ? ? 从逻辑结构上分,图表过的是一种比树更复杂的结构,各个顶点间均有可能存存关系,所以图是表达“多对多”非线性关系。树有广泛的应用。 一 、学习目的 ????? ? 本章学习,在前面的线性表和树的[详细]
-
《数据结构》第六章 图 相关概念导图
所属栏目:[安全] 日期:2021-04-04 热度:194
第六章, 是一个概念众多,且容易混淆,可能有些 “图” 晕。在此画一个导图,简化一个本章节的主要名词术语。请大家好好,理解各个概念的内含和一些概念间关系。[详细]
-
《数据结构》第六章 图 教学设计
所属栏目:[安全] 日期:2021-04-04 热度:155
? ? ?第六章图,是很重要也是最难的一章了,当然有前面的基础,学习也不会困难。本章节主要是概念多,图结构复杂。本设计也属于迟到的了。抱歉。 本章学习总时问分为 2周,共四次课来 来学习。两次上课(13周和14周),一次实验(14周,实验不给课内时间,请[详细]
-
《数据结构》课程设计题目
所属栏目:[安全] 日期:2021-04-04 热度:82
??????????????????????? 〈数据结构〉课程设计综合题目?? --信管班组做 一、实训目的 通过课程设计,学会运用数据结构知识,针对具体应用,自己设计合理数据结构,确定存储结构,并能设计具体操作算法,选择使用具体语言进行实现。掌握 C++ 较复杂程序的[详细]
-
《数据结构》MST性质证明
所属栏目:[安全] 日期:2021-04-03 热度:176
大家好,第六章图,第6.3小节最小生成树。MST性质的证明,课本用一了大段来证明,可能不是很便于看明白,这里给出一个网友的证明,供大家参考。 文字来自下面链接,http://fdcwqmst.blog.163.com/blog/static/164061455201010392833100/。并表示感谢。 MST性[详细]
-
《数据结构》第六章 图实验
所属栏目:[安全] 日期:2021-04-03 热度:112
《数据结构》实验六:?? 图的实验 一..实验目的 ???? 巩固图的相关知识。掌握图的主要存储方法和遍历方法,学会运用图的知识解决实际问题。 1.图的逻辑结构和存储方法,清楚掌握图的遍历操作。 2.掌握图的存储方法的实现代码。 3.学习图的相关知识来解决实[详细]
-
《数据结构》图存储遍历示例
所属栏目:[安全] 日期:2021-04-03 热度:141
??? 大家好,图是一种复杂的结构,存储结构较复杂,下面是一个具体图的邻接矩阵存储方法示例,并实现了深度优先和广度优先遍历输出。 #includeiostreamusing namespace std;const int MaxSize=10;template class DataTypeclass MGraph{public: MGraph(DataTy[详细]
-
【数据结构】红黑树的实现
所属栏目:[安全] 日期:2021-04-03 热度:95
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 热度:191
?? 第七章??查找 学习指南 ? ? ? 本书的前几章,讲完了几种数据结构的存储和常规操作实现。本章节专门讨论一查找技术。 ? ? ? 查找操作在生产生活中常见,如搜索引擎,在自己个人通信录中查找一个电话号码等。 一 、学习目的 ????? ? 本章学习,在前面的各种[详细]
-
《数据结构》第七章 查找 学习问题回收站
所属栏目:[安全] 日期:2021-04-03 热度:83
?? ?????????? 各位,大家好!第六章 图 的学习结束了 。 ????????? 本周开始学习第七章图,第七章准备使用1周来学习,具体时间是第15周,这里是本章问 题回收站,希望大家认真预习,积极思考,相互讨论。将不理解的问题在在本博文后面评论中提出,在提问和[详细]
-
《数据结构》二叉排序树查找性能总结
所属栏目:[安全] 日期:2021-04-03 热度:100
二叉排序树查找性能分析 1. 一棵二叉查找树的平均查找长度(ASL),见下图公式(1)。2. 一棵满二叉排序树的平均查找长度,见下图公式(2)。 3. 一棵斜二叉排序树的平均查找长度,见下图公式(3)。 ? ? ? ? ? ? 由上面可以分析得知,对于二叉排序查找性能[详细]
-
《数据结构》图floyd算法示例-大家一定要看
所属栏目:[安全] 日期:2021-04-03 热度:153
图的只操作复杂,但很在意义和意思。这里根据课本精华,实现一个图的最短路径算法,请参考。 准备计算课本P172,图6-13。如下: #include iostream #include string #includeiomanip //引入输入输出格式头文件using namespace std; const int Maxsize = 10;[详细]
-
《数据结构》问题回答:why100个结点的完全二叉树叶子数为50.
所属栏目:[安全] 日期:2021-04-03 热度:75
? ?有同学问:为什么具有100个结点的完全二叉树的叶子节点数为50? ? ? 这个问题很有意思,谢谢这同同学的提问。现在分析一下。 ? ?如果一棵完全二叉树有100个结点,我们根据以下两点: ? ? ?1.二叉树的性质:深度为k的二叉树,最多有2的k次方-1个结点。 ? ?[详细]
-
《数据结构》完全二叉树的叶子数讨论
所属栏目:[安全] 日期:2021-04-03 热度:164
? ? ?完全二叉树是一种很特别的树,很多性质和特性值得我们关注。下面,就来关注一下叶子数目。 ? ? 如果一树是是完全二叉树, 结点数为n,叶子是多少呢? 现设结点总数为n,度为2和0结点数分别为n2和n0。下面讨论叶子数目。即计算 n0值。 ? ? ?我们根据完全[详细]
-
[JZOJ6089]【CodeChef 2014 April Challenge】Final Battle of C
所属栏目:[安全] 日期:2021-04-03 热度:194
Description (n,q,Vleq 100000,w_ileq 10^9) Solution 又是一道大数据结构 由于有一个下取整,这就导致了不同时间的修改值是不能简单的直接加在一起的。 容易发现,1操作的影响只会影响到距离不超过log的点。 这样我们很容易得到一个 (qlog nlog ^2V[详细]
-
【数据结构】红黑树与跳表-(SortSet)-(TreeMap)-(TreeSet)
所属栏目:[安全] 日期:2021-04-03 热度:72
SortSet 有序的Set,其实在Java中TreeSet是SortSet的唯一实现类,内部通过TreeMap实现的;而TreeMap是通过红黑树实现的;而在Redis中是通过跳表实现的; SkipList 跳表,思想类似平衡二叉树,但又不一样;下面摘了一个介绍: skiplist数据结构简介(摘自: h[详细]
-
自己动手实现java数据结构(八) 优先级队列
所属栏目:[安全] 日期:2021-04-02 热度:106
1.优先级队列介绍 1.1 优先级队列 有时在调度任务时,我们会想要先处理优先级更高的任务。例如,对于同一个柜台,在决定队列中下一个服务的用户时,总是倾向于优先服务VIP用户,而让普通用户等待,即使普通的用户是先加入队列的。 优先级队列和普通的先进先[详细]
-
自己动手实现java数据结构(六)二叉搜索树
所属栏目:[安全] 日期:2021-04-02 热度:184
1.二叉搜索树介绍 前面我们已经介绍过了向量和链表。有序向量可以以二分查找的方式高效的查找特定元素,而缺点是插入删除的效率较低(需要整体移动内部元素);链表的优点在于插入,删除元素时效率较高,但由于不支持随机访问,特定元素的查找效率为线性复杂度[详细]
-
自己动手实现java数据结构(一) 向量
所属栏目:[安全] 日期:2021-04-02 热度:88
1.向量介绍 计算机程序主要运行在内存中,而内存在逻辑上可以被看做是连续的地址。为了充分利用这一特性,在主流的编程语言中都存在一种底层的被称为 数组(Array) 的数据结构与之对应。在使用数组时需要事先声明 固定的大小 以便程序在运行时为其开辟内存空[详细]
-
自己动手实现java数据结构(四)双端队列
所属栏目:[安全] 日期:2021-04-02 热度:92
1.双端队列介绍 在介绍双端队列之前,我们需要先介绍队列的概念。和栈相对应,在许多算法设计中,需要一种" 先进先出(First Input First Output) "的数据结构,因而一种被称为" 队列(Queue) "的数据结构被抽象了出来(因为现实中的队列,就是先进先出的)。 队[详细]
-
自己动手实现java数据结构(三) 栈
所属栏目:[安全] 日期:2021-04-02 热度:62
1.栈的介绍 在许多算法设计中都需要一种 "先进后出(First Input Last Output)" 的数据结构,因而一种被称为 "栈" 的数据结构被抽象了出来。 栈的结构类似一个罐头:只有一个开口;先被放进去的东西沉在底下,后放进去的东西被放在顶部;想拿东西必须按照从上[详细]
-
自己动手实现java数据结构(二) 链表
所属栏目:[安全] 日期:2021-04-02 热度:56
1.链表介绍 前面我们已经介绍了向量,向量是基于数组进行数据存储的 线性表 。今天,要介绍的是线性表的另一种实现方式--- 链表 。 链表和向量都是线性表,从使用者的角度上依然被视为一个线性的列表结构。但是,链表内部存储数据的方式却和向量大不相同:链[详细]
-
算法图解之内存的工作原理
所属栏目:[安全] 日期:2021-04-02 热度:168
? 其中fe0ffeeb是一个内存单元的地址,需要将数据存储到内存时,你请求计算机提供存储空间,计算机给你一个存储地址。需要存储多项数据时,有两种基本方式,一种是数组,另外一种是链表。但它们并非都适用于所有情形,因此知道它们的差别非常重要。[详细]
-
栈-java代码
所属栏目:[安全] 日期:2021-04-01 热度:85
import java.util.Arrays; public class StackDemo { private int maxSize; long [] stackArray; top; // 构造器 public StackDemo( s){ 初始化栈 maxSize = s; stackArray = new [maxSize]; top = -1 ; } 入栈 void push( element){ stackArray[ ++top] = e[详细]
-
队列-java代码
所属栏目:[安全] 日期:2021-04-01 热度:72
public class QueueDemo { private int maxSize; long [] queueArray; // 队列的头,实际是数组的尾 header; 队列的尾,实际是数组的头 footer; nElems; public QueueDemo( size){ maxSize = size; queueArray = new [maxSize]; header = 0 ; footer = -1 ;[详细]
