————数据结构————
由原
见贤思齐
展开
-
数据结构实验之图论七:驴友计划 ( 最短路径 Dijkstra 算法 )
数据结构实验之图论七:驴友计划 Time Limit: 1000 ms Memory Limit: 65536 KiB ...原创 2018-07-29 11:43:20 · 204 阅读 · 0 评论 -
SDUT OJ 图结构练习——最短路径 ( Floyed 算法 AND Dijkstra算法)
图结构练习——最短路径 Time Limit: 1000 ms Memory Limit: 65536 KiB ...原创 2018-07-29 11:40:40 · 268 阅读 · 0 评论 -
栈与队列操作总结
C++有栈和队列的函数#include <queue>#include <stack>queue < int > Q; //定义int类型为例stack < int > S;Stack(堆栈) 是一个容器类的改编,提供了堆栈的全部功能,——也就是说实现了一个先进后出(FILO)的数据结构。操作 比较和分配堆栈 e...原创 2018-07-19 22:05:44 · 286 阅读 · 0 评论 -
链表操作总结
#include <stdio.h>#include <stdlib.h>struct node{ int data; struct node *next;};struct node *head, *tail, *p, *q, *r;void SequenceCreate () /*顺序建立链表*/...原创 2018-07-19 16:42:41 · 158 阅读 · 0 评论 -
深度广度优先搜索
void DFS( int x ){ visit[x] = true; for(int i=0; i<k; i++) { if(!visit[i] && G[x][i]) DFS(i); }}queue <int> Q;void BFS ( int s ){ Visi...原创 2018-07-25 10:12:56 · 134 阅读 · 0 评论 -
SDUT OJ 数据结构实验之二叉树八:(中序后序)求二叉树的深度
数据结构实验之二叉树八:(中序后序)求二叉树的深度Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description已知一颗二叉树的中序遍历序列和后序遍历序列,求二叉树的深度。Input输入数据有多组,输入T,代表有T组数据。每组数据包括两个长度小于50的字符串,第一个字符串表示二叉树的中序遍...原创 2018-05-30 19:56:11 · 276 阅读 · 0 评论 -
SDUT OJ 数据结构实验之二叉树七:叶子问题
数据结构实验之二叉树七:叶子问题Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description已知一个按先序输入的字符序列,如abd,,eg,,,cf,,,(其中,表示空结点)。请建立该二叉树并按从上到下从左到右的顺序输出该二叉树的所有叶子结点。Input 输入数据有多行,每一行是一个长度...原创 2018-05-30 19:55:06 · 144 阅读 · 0 评论 -
SDUT OJ 数据结构实验之二叉树六:哈夫曼编码
数据结构实验之二叉树六:哈夫曼编码Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description字符的编码方式有多种,除了大家熟悉的ASCII编码,哈夫曼编码(Huffman Coding)也是一种编码方式,它是可变字长编码。该方法完全依据字符出现概率来构造出平均长度最短的编码,称之为最优...原创 2018-05-30 19:53:36 · 297 阅读 · 0 评论 -
SDUT OJ 数据结构实验之二叉树五:层序遍历
数据结构实验之二叉树五:层序遍历Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description已知一个按先序输入的字符序列,如abd,,eg,,,cf,,,(其中,表示空结点)。请建立二叉树并求二叉树的层次遍历序列。Input 输入数据有多行,第一行是一个整数t (t<1000),代...原创 2018-05-30 19:52:25 · 152 阅读 · 0 评论 -
SDUT OJ 数据结构实验之二叉树四:(先序中序)还原二叉树
数据结构实验之二叉树四:(先序中序)还原二叉树Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description给定一棵二叉树的先序遍历序列和中序遍历序列,要求计算该二叉树的高度。Input输入数据有多组,每组数据第一行输入1个正整数N(1 <= N <= 50)为树中结点总数,随...原创 2018-05-30 19:50:24 · 322 阅读 · 0 评论 -
SDUT OJ 数据结构实验之二叉树三:统计叶子数
数据结构实验之二叉树三:统计叶子数Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉树并求二叉树的叶子结点个数。Input连续输入多组数据,每组数据输入一个长度小于50个...原创 2018-05-30 19:48:49 · 245 阅读 · 0 评论 -
内排序方法总结
#include <bits/stdc++.h>using namespace std;typedef int ElementType;/*插入排序*/ /*时间复杂度O(N²)*/void InsertionSort ( ElementType *A, int N ){ int j, P; ElementType Tmp; for( P=...原创 2018-07-21 16:10:18 · 260 阅读 · 0 评论 -
最短路径 Dijkstra算法 AND Floyd算法
无权单源最短路:直接广搜 void Unweighted ( vertex s){ queue <int> Q; Q.push( S ); while( !Q.empty() ) { V = Q.front(); Q.pop(); for( each W adjacent to...原创 2018-07-30 14:13:40 · 355 阅读 · 0 评论 -
SDUT OJ 数组计算机(线段树)
学长推荐了这个博客详细的介绍了线段树的建立、查找、更新;数组计算机Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit StatisticProblem DescriptionbLue 有一个神器的机器,这个机器可以读入一个数组,并按照用户要求快速地进行数组的处理和计算,它支持如下两种操作:操作 1:把数组中第 p 个元素的值增...原创 2018-08-04 09:15:13 · 287 阅读 · 0 评论 -
SDUT OJ 迷之好奇 (字典树 )
迷之好奇Time Limit: 2000 ms Memory Limit: 65536 KiBSubmit StatisticProblem DescriptionFF得到了一个有n个数字的集合。不要问我为什么,有钱,任性。FF很好奇的想知道,对于数字x,集合中有多少个数字可以在x前面添加任意数字得到。如,x = 123,则在x前面添加数字可以得到4123,5123等。...原创 2018-08-03 11:21:21 · 208 阅读 · 0 评论 -
SDUT OJ 字典树 AND 静态内存与动态内存
字典树Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit StatisticProblem Description遇到单词不认识怎么办? 查字典啊,已知字典中有n个单词,假设单词都是由小写字母组成。现有m个不认识的单词,询问这m个单词是否出现在字典中。Input含有多组测试用例。第一行输入n,m (n>=0&...原创 2018-08-03 11:12:32 · 297 阅读 · 3 评论 -
Dancing Links算法(舞蹈链)
原文链接:跳跃的舞者,舞蹈链(Dancing Links)算法——求解精确覆盖问题作者:万仓一黍出处:http://grenet.cnblogs.com/本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。算法实践——舞蹈链(Dancing Links)算法求解数独精确覆盖问题的定义:给定一个由0-...转载 2018-08-07 20:41:43 · 4382 阅读 · 0 评论 -
SDUT OJ 数据结构实验之图论十:判断给定图是否存在合法拓扑序列
数据结构实验之图论十:判断给定图是否存在合法拓扑序列Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description 给定一个有向图,判断该有向图是否存在一个合法的拓扑序列。Input 输入包含多组,每组格式如下。第一行包含两个整数n,m,分别代表该有向图的顶点数...原创 2018-08-01 19:42:34 · 233 阅读 · 0 评论 -
SDUT OJ 数据结构实验之图论八:欧拉回路
数据结构实验之图论八:欧拉回路Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description在哥尼斯堡的一个公园里,有七座桥将普雷格尔河中两个岛及岛与河岸连接起来。能否走过这样的七座桥,并且每桥只走一次?瑞士数学家欧拉最终解决了这个问题并由此创立了拓扑学。欧拉通过对七桥问...原创 2018-08-01 19:37:37 · 443 阅读 · 0 评论 -
SDUT OJ 数据结构实验之图论六:村村通公路(最小生成树)
数据结构实验之图论六:村村通公路Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description当前农村公路建设正如火如荼的展开,某乡镇政府决定实现村村通公路,工程师现有各个村落之间的原始道路统计数据表,表中列出了各村之间可以建设公路的若干条道路的成本,你的任务是根据给出的数...原创 2018-08-01 19:23:20 · 224 阅读 · 0 评论 -
SDUT OJ 数据结构实验之图论五:从起始点到目标点的最短步数(BFS)
数据结构实验之图论五:从起始点到目标点的最短步数(BFS)Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description 在古老的魔兽传说中,有两个军团,一个叫天灾,一个叫近卫。在他们所在的地域,有n个隘口,编号为1..n,某些隘口之间是有通道连接的。其中近卫军团在1号隘口...原创 2018-08-01 19:19:53 · 262 阅读 · 0 评论 -
SDUT OJ 数据结构实验之图论四:迷宫探索
数据结构实验之图论四:迷宫探索Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description有一个地下迷宫,它的通道都是直的,而通道所有交叉点(包括通道的端点)上都有一盏灯和一个开关;请问如...原创 2018-08-01 19:17:35 · 174 阅读 · 0 评论 -
最小生成树问题:Kruskal算法 AND Prim算法
Kruskal算法:void Kruskal ( ){ MST = { } ; //边的集合,最初为空集 while( EdgeAccepted < NumVertex - 1 && E中还有边 ) //MST中边数不到V-1 ...原创 2018-07-31 21:31:16 · 195 阅读 · 0 评论 -
并查集简述 (HDU-1213-How Many Tables)
并查集主要解决集合的有关运算,主要操作是查找操作和并操作。1、集合的储存方式。 为便于查找,集合通常以树结构储存,每个元素分 数据域和指针域,可以用链式储存,也可以用结构数组储存,用根节点来表示一个集合。这个性质也决定了集合中是子节点指向父节点。typedef struct { ElementType Data; int Parent;}SetType;...原创 2018-07-31 14:59:12 · 160 阅读 · 0 评论 -
SDUT OJ 效率至上(线段树)
效率至上Time Limit: 5000 ms Memory Limit: 65536 KiBSubmit StatisticProblem Description题意很简单,给出一个数目为n的非有序序列,然后有m次查询.对于每次查询输入两个正整数l,r请输出区间[l,r]的最大值与最小值的差值Input 第一行:输入两个正整数n,m (1<=n<=500...原创 2018-08-04 09:18:02 · 240 阅读 · 0 评论 -
树与二叉树的常用操作函数总结
这里也常常用到一些栈与队列的操作函数,就不一一写了,栈与队列总结里会有这些操作;; #include <stdio.h>#include <stdlib.h>/*二叉树的链式结构*/typedef int ElementType;typedef struct TNode *Position;typedef Position BinTree; ...原创 2018-05-29 19:40:16 · 662 阅读 · 0 评论 -
SDUT OJ 数据结构实验之二叉树二:遍历二叉树
数据结构实验之二叉树二:遍历二叉树Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,, (其中,表示空结点)。请建立二叉树并按中序和后序的方式遍历该二叉树。Input连续输入多组数据,每组数据输入一个长度小...原创 2018-05-22 19:46:24 · 262 阅读 · 0 评论 -
SDUT OJ 数据结构实验之二叉树一:树的同构
数据结构实验之二叉树一:树的同构Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵...原创 2018-05-22 19:43:37 · 570 阅读 · 3 评论 -
SDUT OJ 数据结构实验之排序二:交换排序
数据结构实验之排序二:交换排序Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description冒泡排序和快速排序都是基于"交换"进行的排序方法,你的任务是对题目给定的N个(长整型范围内的)整数从小到大排序,输出用冒泡和快排对这N个数排序分别需要进行的数据交换次数。Input连续多组输入数据,...原创 2018-04-09 19:42:43 · 152 阅读 · 0 评论 -
SDUT OJ 数据结构实验之排序一:一趟快排
数据结构实验之排序一:一趟快排Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description给定N个长整型范围内的整数,要求输出以给定数据中第一个数为枢轴进行一趟快速排序之后的结果。 Input连续输入多组数据,每组输入数据第一行给出正整数N(N < = 10^5),随后给出N个长整...原创 2018-04-09 19:40:09 · 231 阅读 · 0 评论 -
SDUT OJ 3403 数据结构实验之排序六:希尔排序
数据结构实验之排序六:希尔排序Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description我们已经学习了各种排序方法,知道在不同的情况下要选择不同的排序算法,以期达到最好的排序效率;对于待排序数据来说,若数据基本有序且记录较少时, 直接插入排序的效率是非常好的,希尔排序就是针对一组基本有...原创 2018-02-20 21:34:30 · 263 阅读 · 0 评论 -
SDUT OJ 约瑟夫问题
约瑟夫问题Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Descriptionn个人想玩残酷的死亡游戏,游戏规则如下: n个人进行编号,分别从1到n,排成一个圈,顺时针从1开始数到m,数到m的人被杀,剩下的人继续游戏,活到最后的一个人是胜利者。请输出最后一个人的编号。Input输入n和m值。Ou...原创 2018-02-26 16:26:26 · 1827 阅读 · 0 评论 -
SDUT OJ 数据结构实验之链表九:双向链表
数据结构实验之链表九:双向链表Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description学会了单向链表,我们又多了一种解决问题的能力,单链表利用一个指针就能在内存中找到下一个位置,这是一个不会轻易断裂的链。但单链表有一个弱点——不能回指。比如在链表中有两个节点A,B,他们的关系是B是A...原创 2018-02-26 16:12:45 · 170 阅读 · 0 评论 -
SDUT OJ 数据结构实验之链表八:Farey序列
数据结构实验之链表八:Farey序列Time Limit: 10 ms Memory Limit: 600 KiBSubmit Statistic DiscussProblem DescriptionFarey序列是一个这样的序列:其第一级序列定义为(0/1,1/1),这一序列扩展到第二级形成序列(0/1,1/2,1/1),扩展到第三极形成序列(0/1,1/3,1/2,2/3,1/...原创 2018-02-26 14:29:21 · 145 阅读 · 0 评论 -
SDUT OJ 数据结构实验之链表一:顺序建立链表
数据结构实验之链表一:顺序建立链表Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description输入N个整数,按照输入的顺序建立单链表存储,并遍历所建立的单链表,输出这些数据。Input第一行输入整数的个数N;第二行依次输入每个整数。Output输出这组整数。Sample Input81...原创 2018-02-25 18:15:26 · 230 阅读 · 0 评论 -
SDUT OJ 数据结构实验之链表二:逆序建立链表
数据结构实验之链表二:逆序建立链表Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description输入整数个数N,再输入N个整数,按照这些整数输入的相反顺序建立单链表,并依次遍历输出单链表的数据。Input第一行输入整数N;;第二行依次输入N个整数,逆序建立单链表。Output依次输出单链表...原创 2018-02-25 18:38:20 · 230 阅读 · 0 评论 -
SDUT OJ 数据结构实验之链表三:链表的逆置
数据结构实验之链表三:链表的逆置Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description输入多个整数,以-1作为结束标志,顺序建立一个带头结点的单链表,之后对该单链表的数据进行逆置,并输出逆置后的单链表数据。Input输入多个整数,以-1作为结束标志。Output输出逆置后的单链表数...原创 2018-02-25 20:35:43 · 301 阅读 · 0 评论 -
SDUT OJ 数据结构实验之链表四:有序链表的归并
数据结构实验之链表四:有序链表的归并Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description分别输入两个有序的整数序列(分别包含M和N个数据),建立两个有序的单链表,将这两个有序单链表合并成为一个大的有序单链表,并依次输出合并后的单链表数据。Input第一行输入M与N的值; 第二行依...原创 2018-02-26 07:03:42 · 307 阅读 · 0 评论 -
SDUT OJ 数据结构实验之链表五:单链表的拆分
数据结构实验之链表五:单链表的拆分Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description输入N个整数顺序建立一个单链表,将该单链表拆分成两个子链表,第一个子链表存放了所有的偶数,第二个子链表存放了所有的奇数。两个子链表中数据的相对次序与原链表一致。Input第一行输入整数N;;第二...原创 2018-02-26 07:45:49 · 532 阅读 · 0 评论 -
SDUT OJ 数据结构实验之链表六:有序链表的建立
数据结构实验之链表六:有序链表的建立Time Limit: 1000 ms Memory Limit: 65536 KiBSubmit Statistic DiscussProblem Description输入N个无序的整数,建立一个有序链表,链表中的结点按照数值非降序排列,输出该有序链表。Input第一行输入整数个数N;第二行输入N个无序的整数。Output依次输出有序链表的结点值。Sampl...原创 2018-02-26 10:18:06 · 154 阅读 · 0 评论