我的首发平台是公众号【CodeAllen】,学习交流QQ群:736386324,转载请注明出处
因为图人任意两点之间都可能存在联系,所以无法用数据元素在内存中的物理位置表示元素之间的关系
因此将数组和链表的特性结合在一起才能更好的存放
比如下面四张图其实是一个图
我们可以设置两个数组,顶点数组为vertex[4]={V0,V1,V2,V3},边数组arc[4][4]为对称矩阵(0表示不存在顶点间的边,1表示顶点间存在边)。
对称矩阵:所谓对称矩阵就是n阶矩阵的元满足a[i][j]=a[j][i](0numEdges); for( i=0; i < G->numVertexes; i++ ) { scanf("%c", &G->vexs[i]); } for( i=0; i < G->numVertexes; i++ ) { for( j=0; j < G->numVertexes; j++ ) { G->arc[i][j] = INFINITY; // 邻接矩阵初始化 } } for( k=0; k < G->numEdges; k++ ) { printf("请输入边(Vi,Vj)上的下标i,下标j和对应的权w:\n"); // 这只是例子,提高用户体验需要进行改善 scanf("%d %d %d", &i, &j, &w); G->arc[i][j] = w; G->arc[j][i] = G->arc[i][j]; // 是无向网图,对称矩阵 } } #include int main() { int i; for(i=1;i
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?