浅析数据结构-图的基本概念
2015-08-26 14:18
645 查看
线性表和树两类数据结构,线性表中的元素是“一对一”的关系,树中的元素是“一对多”的关系,本章所述的图结构中的元素则是“多对多”的关系。图(Graph)是一种复杂的非线性结构,在图结构中,每个元素都可以有零个或多个前驱,也可以有零个或多个后继,也就是说,元素之间的关系是任意的。
TestGraph
#include <iostream> #include "GraphData.h" using namespace std; // void PrintGrgph(GraphList *pGraphList) { int i =0; while(pGraphList->vertexList[i].pFirstNode != NULL && i<MAXVEX) { printf("顶点:%c ",pGraphList->vertexList[i].nNodeData); EdgeNode *e = NULL; e = pGraphList->vertexList[i].pFirstNode; while(e != NULL) { printf("%d ", e->nNodevex); e = e->next; } i++; printf("\n"); } } int main() { int numVexs,numEdges; GraphData* pTestGraph = new GraphData(); GraphArray graphArray; GraphArray* pGraphArray = &graphArray; GraphList* pGgraphList = new GraphList(); cout<<"输入顶点数和边数"<<endl; cin>>numVexs>>numEdges; cout<<"顶点数和边数为:"<<numVexs<<numEdges<<endl; /*pTestGraph->CreateGraphArray(pGraphArray,numVexs,numEdges); for(int i = 0; i< numEdges;i++) { for (int j = 0;j< numEdges;j++) { cout<<pGraphArray->arg[i][j]; } cout<<endl; }*/ pTestGraph->CreateGraphList(pGgraphList,numVexs,numEdges); PrintGrgph(pGgraphList); system("pause"); }
TestGraph
相关文章推荐
- COJ966 WZJ的数据结构(负三十四)
- 【数据结构学习】-链表
- 数据结构预算法学习-第一章(数据与数据结构)
- 算法和数据结构就是编程的一个重要部分,你若失掉了算法和数据结构,你就把一切都失掉了。
- 单链表的反转(数据结构 面试题)
- 详细介绍java中的数据结构
- 数据结构Java实现02----线性表与顺序表
- 数据结构之树
- 数据结构之字符串的模式匹配
- POJ_2528 Mayor's poster(线段树+离散化)
- 数据结构学习之路-第二章:线性单链表
- 【数据结构与算法】内部排序之三:堆排序(含完整源码)
- Java实现数据结构与算法-链表
- Java数据结构 -> 树
- 数据结构-线性表
- # LeetCode Merge k Sorted Lists
- 【数据结构】-树和二叉树
- 数据结构之红黑树——BST的变种2
- 数据结构之红黑树——BST的变种
- 数据结构之循环单链表