
数据结构
文章平均质量分 73
whhom
github链接https://github.com/whhcs
展开
-
图的基本概念及图的存储
目录图(Graph)定义图的各种相关概念图的存储邻接矩阵存储邻接表存储带权图的存储带权图的邻接矩阵存储带权图的邻接表存储图(Graph)定义图(Graph)是由 顶点的有穷非空集合 和 顶点之间边 的集合组成,通常表示为G(V, E),其中,G表示一个图,V是图G中顶点的集合,E是图G中边的集合。图中的元素我们叫作顶点(Vertex),图中任意一个顶点可以和其他顶点建立连接关系,我们把这种建立的连接关系叫作边(Edge)。 图的各种相关概念无向边:若顶点viv_ivi到顶点vj原创 2021-12-05 23:26:57 · 283 阅读 · 0 评论 -
数据结构——队列
文章目录队列的定义及概述抽象数据类型队列的抽象类数组描述队列的定义及概述队列(queue)是一个先进先出(FIFO)的线性表,其插入和删除操作分别在表的两端进行,插入元素的那一端称为队尾(back或rear),删除元素的那一端称为队首(front)。还有一种队列是优先级队列,它的删除操作是按照元素的优先级顺序进行的。C++标准模板库STL的队列是一种用数组描述的队列数据结构,它是从STL的双端队列派生的。 抽象数据类型抽象数据类型 queue{ 实例 元素的有序表,一端称为队原创 2021-10-03 23:50:26 · 164 阅读 · 0 评论 -
数据结构—栈
数据结构—栈栈的定义栈是限定仅在表尾(栈顶)进行插入(也称入栈或压栈)和删除(也称出栈或弹栈)操作的线性表,是一个后进先出(last-in-first-out, LIFO)的数据结构,简称LIFO结构。我们把允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom),不含任何数据元素的栈称为空栈。 栈的抽象数据类型抽象数据类型 stack{ 实例 线性表:一断称为底,另一端称为顶 操作 empty():// 栈为空时返回true,否则返回false siz原创 2021-09-12 21:47:17 · 276 阅读 · 0 评论 -
数据结构之线性表—链表描述
@TOC线性表—链式描述在基于数组的描述中,元素的地址是由数学公式决定的,分布在一段连续的内存空间中。在链式描述中,线性表的元素在内存中的存储位置是随机的。每个元素都有一个明确的指针或链指向线性表的下一个元素的地址 。 单向链表设L = (e0e_0e0, e1e_1e1,…, en−1e_n-_1en−1) 是一个线性表,在这个线性表中,每个元素都在一个单独的节点中描述,每一个节点都有一个链域,它的值是线性表的下一个元素的地址。所以,元素eie_iei的节点链接着元素ei+原创 2021-09-05 21:52:10 · 509 阅读 · 0 评论 -
数据结构之线性表—数组描述
TOC定义线性表(linear list):零个或多个数据元素的有限序列。线性表也称有序表(ordered list),它的每一个实例都是元素的一个有序集合。每一个实例的形式为(e0e_0e0, e1e_1e1, …, en−1e_n-_1en−1),其中n是有穷自然数,是线性表的长度或大小,eie_iei是线性表的元素,i是元素eie_iei的索引。元素本身的结构与线性表的结构无关,在较复杂的线性表中,一个数据元素可以由若干个数据项组成。当n = 0时,线性表称为空表;当n >原创 2021-08-29 23:38:09 · 1014 阅读 · 0 评论 -
数据结构第一章:绪论(下)
目录声明递归线性递归(linear recursion)定义数组求和(线性递归版)减而治之(decrease-and-conquer)递归分析递归跟踪(recursion trace)递推方程(recurrence equation)例子多递归基数组倒置(递归版)快速幂递归消除尾递归及其消除数组倒置(迭代版)二分递归分而治之(Divide-and-conquer)数组求和(二分递归版)效率声明本文内容来源于学堂在线邓俊辉老师的数据结构课程以及邓俊辉老师编写的《数据结构(C++语言版)》,本文为学习内容记原创 2021-08-15 13:11:08 · 175 阅读 · 0 评论 -
数据结构、算法与应用(C++语言描述) 练习题(1-18)
在程序1-7的交换函数中,形参x、y实际上是传值参数,在运行时,交换函数执行前,把实参的值复制给形参,当函数运行结束时,形参类型的析构函数负责释放形式参数,而形参的值不会复制到对应的实参中,故程序1-7的交换函数不能将形参x和y所对应的实参的值交换。 若要使实参的值能够得到交换,将传值参数修改为引用参数即可void swap(int &x, int &y)。template<typename T>int count(T a[], int n, const T&..原创 2021-08-07 18:53:36 · 746 阅读 · 0 评论 -
数据结构第一章:绪论(上)
第一章:绪论声明本文内容来源于学堂在线邓俊辉老师的数据结构课程以及邓俊辉老师编写的《数据结构(C++语言版)》,本文为学习内容记录。目录第一章:绪论声明计算机与计算算法定义算法实例冒泡排序算法要素:有穷性渐进复杂度时间复杂度大O记号复杂度分析复杂度分析的主要方法级数的分类和求和封底估算(Back-Of-The-Envelope Calculation)计算机与计算计算(信息处理):借助某种工具,遵照一定的规则,以明确而机械的形式进行。计算机 = 计算模型 = 信息处理工具 算法定原创 2021-08-01 02:02:04 · 171 阅读 · 0 评论