![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
想考科大的菜鸡cry
sit down,please.
展开
-
【图BFS】数据结构与算法 六度空间 DFS不能使用
#include<iostream>#include<iomanip>#include<string.h>#define maxsize 10003using namespace std;int visit[maxsize];typedef struct ArcNode { int dex; struct ArcNode *next;}ArcNode;typedef struct VNode { ArcNode *first;}VNode;t原创 2020-06-20 23:03:08 · 290 阅读 · 0 评论 -
【图】遍历图DFS,BFS 列出连通集
一、题目给定一个有N个顶点和E条边的无向图,请用DFS和BFS分别列出其所有的连通集。假设顶点从0到N−1编号。进行搜索时,假设我们总是从编号最小的顶点出发,按编号递增的顺序访问邻接点。输入格式输入第1行给出2个整数N(0<N≤10)和E,分别是图的顶点数和边数。随后E行,每行给出一条边的两个端点。每行中的数字之间用1空格分隔。输出格式按照"{ v1 v2…vk }"的格式,每行输出一个连通集。先输出DFS的结果,再输出BFS的结果。输入样例8 60 70 12 04 12原创 2020-06-14 20:31:09 · 1865 阅读 · 0 评论 -
【图的遍历算法操作】深度优先搜索遍历(DFS)和广度优先搜索遍历(BFS)
一、DFS图的深度优先搜索遍历类似于二叉树的先序遍历。基本思想是首先访问出发点v,并将其标记为已访问过;然后选取与v邻接的未被访问的任意一个顶点w,并且访问它;再选取与w邻接的未被访问过的任意顶点并访问,以此重复。当一个顶点的所有邻接点都被访问过时,依次退回到最近被访问过的顶点。若该顶点还有其他邻接顶点未被访问,则从这些未被访问的顶点中取一个并重复上述过程。二、代码以邻接表为存储结构的图的DFS代码如下:int visit[maxsize];/*v是起点编号,visit[]是一个全原创 2020-06-14 20:29:16 · 384 阅读 · 0 评论 -
【二叉排序树】是否是同一棵二叉排序树
一。题目给定一个插入序列就可以唯一确定一棵二叉搜索树。然而,一棵给定的二叉搜索树却可以由多种不同的插入序列得到。例如分别按照序列{2, 1, 3}和{2, 3, 1}插入初始为空的二叉搜索树,都得到一样的结果。于是对于输入的各种插入序列,你需要判断它们是否能生成一样的二叉搜索树。二、思路刚看这道题目输入样例没看懂,后来发现是“包含若干组测试用例”。。。整个题思路很简单,主要是两个函数二叉排序树的插入函数遍历两棵树,每次判断遍历的相同位置的相同节点的data数据是不是一样。不管用什么前序,中序,原创 2020-06-13 22:34:21 · 1771 阅读 · 0 评论 -
【二叉树】树的层次遍历判断树的同构(思路代码)
一、题目给定两棵树T1和T2。如果T1可以通过若干次左右孩子互换就变成T2,则我们称两棵树是“同构”的。例如图1给出的两棵树就是同构的,因为我们把其中一棵树的结点A、B、G的左右孩子互换后,就得到另外一棵树。而图2就不是同构的。现给定两棵树,请你判断它们是否是同构的。输入样例18A 1 2B 3 4C 5 -D - -E 6 -G 7 -F - -H - -8G - 4B 7 6F - -A 5 1H - -C 0 -D - -E 2 -输出样例1Yes原创 2020-06-07 22:15:40 · 468 阅读 · 0 评论