日常 25

数据结构图知识点:
图是一种重要的数据结构,用于表示对象之间的关系。它由节点(或称为顶点)和连接这些节点的边组成。图广泛应用于网络、社交媒体、计算机网络、城市交通等多个领域。
图的基本概念
顶点:图中的基本单位,代表一个对象或元素。
边:连接两个顶点的线,可以表示这两个对象之间的关系。
有向图:边有方向,从一个顶点指向另一个顶点。用箭头表示。
无向图:边没有方向,表示两个顶点之间的双向关系。
权重:边可以有一个附加的数值,称为权重,表示连接两个顶点的代价或距离。
邻接矩阵:用一个二维数组表示图,行和列分别表示顶点,数组中的值表示边的存在和权重。
邻接表:用一个链表或数组的数组来表示,数组的每个元素存储与相应顶点相邻的顶点。
图的类型
简单图:不包含自环(顶点指向自己)和重边(两顶点之间的边不重合)。
完全图:图中的每一对顶点都有一条边相连接。
联通图:在无向图中,任意两个顶点都有路径相连;在有向图中,若任意两个顶点都能互相到达,则称为强连通。
树:一种特殊的图,是一个连通无环的无向图。
森林:多棵树的集合。
图的遍历
深度优先搜索:从一个顶点出发,尽可能深入访问,然后回溯。可以使用栈实现。
广度优先搜索:从一个顶点出发,先访问其所有邻接顶点,再依次访问这些邻接顶点的邻接顶点。可以使用队列实现。
图的算法
最短路径算法:
Dijkstra 算法:用于计算单源顶点到其他所有顶点的最短路径,适用于权重非负的图。
Bellman-Ford 算法:可以处理负权重边,但不处理负权重环。
最小生成树算法:
Kruskal 算法:贪心算法,逐步选择边构造最小生成树。
Prim 算法:从一个顶点开始,逐步添加最小权重的边。
拓扑排序(Topological Sorting):
针对有向无环图(DAG)的顶点进行排序,使得对于每一条有向边从顶点 u 到顶点 v,u 在排序中排在 v 前面。

posted @   一如初见233  阅读(7)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
点击右上角即可分享
微信分享提示