清北学堂北京大学吴耀轩神仙讲课day5摘要

摘要:
今天的图论是什么?)对于具有n个顶点的无向连通图,边的数目必须大于n-1。如果选择n-1条边使得无向图仍然连通,则由n个顶点和n-1条边缘(弧)组成的图称为原始无向图的生成树。(Konjaku的理解是这样的。如果你想更多地了解芬妮昂,她可能会比我更喜欢QWQ。原则是不断放松,每次放松时更新每条边。如果你能在放松n-1次后更新,这意味着图表中有一个负环,因此你无法得到结果,否则你会完成。)。

今天讲图论

图是啥?(白纸上的符号?)

对于一个拥有n个顶点的无向连通图,它的边数一定多于n-1条。若从中选择n-1条边,使得无向图仍然连通,则由n个顶点及这 n-1条边(弧)组成的图被称为原无向图的生成树。

换句话说,有边有点就是图。(本蒟蒻的理解是这样。。QWQ)

另外,还有一些与图有关的定义(很好理解,通俗一点):

阶:图中点的个数。

边:两个点间的连接

权值:边的长度

。。。想了解更多找度娘,她可能讲的比我通俗QWQ。

邻接矩阵:

清北学堂北京大学吴耀轩神仙讲课day5摘要第1张

 清北学堂北京大学吴耀轩神仙讲课day5摘要第2张

 存图方式:邻接矩阵,链式前向星

1.邻接矩阵:用两个角标存储,f[i][j]表示从i到j的边的权值

2.链式前向星:

void addedge(long long from,long long to,long long dis)//入边链式前向星 
{
    num_edge++;//编号
    edge[num_edge].next=head[from];//把next值改为此边编号
    edge[num_edge].to=to;//to和dis分别为对应的终点和长度
    edge[num_edge].dis=dis;
    head[from]=num_edge;//把这个边的始点的编号的head值改为前一个边的编号(指向)
}

最小生成树:从图中选出一些边和结点,使得每个结点都被联通,且保证边权之和最小

克鲁斯卡尔:

清北学堂北京大学吴耀轩神仙讲课day5摘要第3张

最短路径算法:

floyd:

清北学堂北京大学吴耀轩神仙讲课day5摘要第4张

代码为清北学堂北京大学吴耀轩神仙讲课day5摘要第5张三重循环

比尔曼福德:清北学堂北京大学吴耀轩神仙讲课day5摘要第6张

Bellman - ford算法是求含负权图的单源最短路径的一种算法,效率较低,代码难度较小。其原理为连续进行松弛,在每次松弛时把每条边都更新一下,若在n-1次松弛后还能更新,则说明图中有负环,因此无法得出结果,否则就完成。

 清北学堂北京大学吴耀轩神仙讲课day5摘要第7张

DAG(大哥):

清北学堂北京大学吴耀轩神仙讲课day5摘要第8张

免责声明:文章转载自《清北学堂北京大学吴耀轩神仙讲课day5摘要》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇win批处理(笔记)python 绘图 异常点绘制使用 ax.plot(abnormal_points['ds'], abnormal_points['y'], "rX", label='abnormal points')下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

Uni-app v-on监听事件

使用标记上的v-on监视事件。缩写为@click common click events方法:方法:{Focus(){console.log;},blur(){console.log;},confirm(){console.log;},click(){console.log;},tap(){console.log;},longpress(){console....

iReport制作报表,字数过多换行问题

1.当字段中显示的数据太长而无法放入表中时,需要自动换行。选择要更改的表(显示动态内容的字段),并将Stretchwithoverflow属性设置为选中。未选中前:选中后:2.然而,桌子坏了,非常难看。此时,我们需要设置一个属性,使同一行中的其他字段保持与换行字段相同的高度。此时,我们需要框选要显示在整行中的动态字段和表;将属性StretchType设置为R...

5G中的频点计算及实例分析

相关图表:关于∏SSB的频域位置SSREF和GSCN之间的关系,请参见下表:注:SCSspacedchannelrasterisM=3的工作频带的默认值。同步网格是5G的第一个概念,旨在加快终端扫描SSB的频率位置。GSCN通常用于在SA联网模式下加速时频同步,以继续解释MIB和SIB1消息;对于NSA来说,这是不必要的。RRC重配置消息已经携带了NR的SS...

Swift开发中 JSON对象/JSON字符串/Data的互转

本文将介绍常见的转换#pragmark JSON(object)------˃JSON string 1,原生方法//JSON------˃data------˃JSON string letdata=try?JSON序列化。data#pragmark数据------˃JSON(对象)1.本机方法guardletarray=try?[[String:AnyO...

js 设计模式

出乎意料的是,事件只有在离我很近并且需要发布的时候才能执行。5.适配器模式:很像接口传输。例如,后端的数据不能直接用于jsTree。使用适配器模式将数据传输到jsTree格式是编程的基本理念。我平时没注意到,但我不小心用了很多。...

ActiveMQ教程(消息发送和接受)

activemq全部<版本>{版本}</版本>名称为ActiveMqUtilitimportjava。util。日期importorg.apache.activemq.activemq连接//创建链接Connectionconnection=null;61616");...