
【数据结构】
文章平均质量分 63
算法与实战训练
烂尾主教
这个作者很懒,什么都没留下…
展开
-
【数据结构】栈的操作
栈定义:栈是限定仅在表尾进行插入或删除操作的线性表。由于栈只有一边开口存取数据,称开口的那一端为“栈顶”,封死的那一端为“栈底”(类似于盛水的木桶,从哪进去的最后还得从哪出来)。栈操作数据元素的方法栈操作数据元素只有两种动作:入栈:在栈顶插入一个元素的操作;出栈:从栈顶删除一个元素的操作;栈的“先进后出”原则(Last In First Out)使用栈存储数据元素,对数据元素的“存”和“取”有严格的规定:数据按一定的顺序存储到栈中,当需要调取栈中某数据元素时,需要将在该数据元素之后原创 2021-10-13 20:34:41 · 870 阅读 · 0 评论 -
【数据结构】图以及图的遍历(深度遍历和广度遍历)
图在数学中,图是描述于一组对象的结构,其中某些对象对在某种意义上是“相关的”。这些对象对应于称为顶点的数学抽象(也称为节点或点),并且每个相关的顶点对都称为边(也称为链接或线)。通常,图形以图解形式描绘为顶点的一组点或环,并通过边的线或曲线连接。 图形是离散数学的研究对象之一。 ------百度百科6.1 基本术语图:记为 G=( V, E )其中:V 是G原创 2021-11-12 21:04:20 · 4811 阅读 · 2 评论 -
【数据结构oj】树的度(树和二叉树的相互转化)
输入:ABC##DE#F#G####输出:3 不难看出,以二叉树方式存储的树,二叉树结点a的左孩子就是树结点a的左孩子,而二叉树a的右孩子是树节点的a的兄弟,既a父节点f_a的某个孩子(非长子)那么,可以通过遍历树的每个结点,编写算法,计算出每个结点的度(既树的孩子数目),找出其中最大的度,作为该树的度输出。第一版代码#include <stdio.h>#include <stdlib.h>int Max_degree = 0;typedef st.原创 2021-11-15 17:29:38 · 1468 阅读 · 2 评论 -
集合的操作(交并差)
待改写:存储数据类型int——>char重复的元素可存储功能上不完善#include <stdio.h>#include <stdlib.h>typedef struct{ int data; int flag; struct Linklist *next;} Linklist;//对LA,LB中相同的元素打上标记Linklist* Link_get_flag(Linklist *LA,Linklist *LB){ Li原创 2021-10-12 16:54:34 · 193 阅读 · 0 评论 -
【数据结构】【图文】【oj习题】 图的拓扑排序(邻接表)
拓扑排序:按照有向图给出的次序关系,将图中顶点排成一个线性序列,对于有向图中没有限定次序关系的顶点,则可以人为加上任意的次序关系,由此所得顶点的线性序列称之为拓扑有序序列。显然对于有回路的有向图得不到拓扑有序序列,因为有回路的话,顶点的先后次序就不确定了。例如:例如,下图,我们可以人为限定次序:A B C D 或 A C B D解释:该输出顺序特点就是后面的顶点输出必然后于该顶点的前驱顶点算法:从有向图中选取一个没有前驱(没有在它之前活动)的顶点,输出之;从有向图中删去此顶点以及所有以它为.原创 2021-11-19 16:35:55 · 1359 阅读 · 0 评论 -
【数据结构】停车场问题
实验二 线性表的应用(二)【实验类别】设计型实验【实验目的】1.熟悉线性表的顺序存储和链式存储各自的特点及运算;2.熟练掌握线性表的基本操作在不同存储结构中实现算法;3.通过本次实验帮助学生加深对C语言的使用(特别是函数的参数调用、指针类型的应用和链表的建立等各种基本操作)4.对一个实际的问题能够进行合理的需求分析,选择合适的存储结构,设计完成符合实际需要的功能。【实验学时】4学时【实验组人数】1人。【实验设备环境】计算机,VC++6.0,C-Free等【实验内容】1、停车场的管理(原创 2021-10-20 22:53:23 · 2904 阅读 · 0 评论 -
顺序表的的的
点击查看代码#include <stdio.h>#include <stdlib.h>#include <conio.h>#include <malloc.h>#define TURE 1#define false 0#define OK 1#define ERROR 0#define OVERFLOW -2#define LIST_INIT_SIZE 100#define LISTINCREAMENT 1.原创 2021-10-12 16:55:23 · 94 阅读 · 0 评论 -
【数据结构】串的定义以及算法
串一、定义串结构的定长顺序存储类似于线性表的顺序存储结构,用一组地址连续的存储单元存储串值的字符序列。二、结构在串的定长顺序存储结构中,按照预定义的大小,为每个定义的串变量分配一个固定长度的存储区, 则可用定长数组如下描述之。 typedef unsigned char SString[MAXLEN+1];注意:用SString[0]来存放串长信息;串值后面加一个不计入串长度的标识符‘\0’;串的实际长度可在予定义长度的范围内随意,超过予定义长度的串值则被舍去,称为“截原创 2021-10-31 14:23:12 · 915 阅读 · 0 评论 -
【数据结构】共享栈
共享栈共享栈:两个栈共享同一片存储空间,这片存储空间不单独属于任何一个栈,某个栈需要的多一点,它就可能得到更多的存储空间;两个栈的栈底在这片存储空间的两端,当元素入栈时,两个栈的栈顶指针相向而行。基本概念栈是一种特殊的线性表,是一种只允许在表的一端进行插入或删除操作的线性表。表中允许进行插入、删除操作的一端称为栈顶。表的另一端称为栈底。栈顶的当前位置是动态的,对栈顶当前位置的标记称为栈顶指针。当栈中没有数据元素时,称之为空栈。栈的插入操作通常称为进栈或入栈,栈的删除操作通常称为退栈或出栈。栈是原创 2021-10-15 16:47:15 · 1761 阅读 · 0 评论 -
【数据结构】【仅代码】二叉树
代码内容包括:二叉树的遍历(先序、中序、后序) 二叉树的创建(先序) 以及二叉树深度和叶子数目的求法</details>#include <stdio.h>#include <stdlib.h>typedef char dataType;typedef struct node{ dataType data; struct node *lchild,*rchild;}BinTree;/*---创建二叉树---*/BinTree *Cr原创 2021-11-14 18:32:55 · 600 阅读 · 0 评论 -
【数据结构】先排序后查找的查找
这里写目录标题序言基本概念工具:ASL例如: 给定一个集合:1 3 7 4 9 0,顺序查找的方法,查找成功的ASL是多少? 解:对于每一个元素的查找成功的概率相同,都是1/6 既pi = 1/6,然后每个元素被查找成功的比较次数分别为(1,2,3,4,5,6) ASL = (1+2+3+4+5+6)/6 = 21/6静态查找表顺序查找折半查找(二分查找 对分查找)分块查找动态查找表2021-11-30 14:46:14 星期二序言查找,顾名思义,就是从某一集体中找出一个或一种元素。又称原创 2021-11-30 16:58:24 · 579 阅读 · 2 评论 -
【数据结构】一元多项式
实验报告格式规范,包括以下内容:(正文 宋体五号 )一、问题描述(标题黑体小四)对简单的一元多项式相加、相减、求导运算。二、实验目的实现对简单的一元多项式相加、相减、求导运算。三、实验设计1.逻辑结构逻辑结构是指数据元素之间的逻辑关系,即从逻辑关系上描述数据。它与数据的存储无关,是独立于计算机的。数据的逻辑结构分为线性结构和非线性结构,线性表是典型的线性结构;集合、树和图是典型的非线性结构。数据的逻辑结构分类见图1-1。集合结构中的数据元素之间除了 “同属于一个集合”的关系外,别无其他关原创 2021-10-12 16:47:56 · 4744 阅读 · 1 评论