今天是一个“幸福又快乐”的一天
I am happy today!!!!!!!!!!
# 1.图
a.图的概念:
无向图and有向图
(真是个智慧的东西)
还有邻接矩阵和邻接表:
感觉还是比较好理解的(就是忘了怎么打了
b.图的遍历
DFS and BFS,年代有点久远,不是很会打了
当然广搜才是最nice的!
c.Floyd 算法
A和B的最小路径就是:
1.A到B的距离
2.A经过n个节点到达B(废话
然后比较A到节点k加上节点k到B的距离是否比A到B的距离小
如果小就更新,可以用邻接矩阵记录
要设定两个数组:一个记录当前从A点出发的最新数据,一个是最新数据前从A出发的数据(也就是上一个)
感觉理解还可以,打代码时可能就不是了
尝试一下:
for(int k=1;k<=n;k++)
{
for(int i=1;i<=n;i++)
{
for(int j=1;j<=n;j++)
{
if(a[i][k]+a[k][j]<a[i][j])
{
a[i][j]=a[i][k]+a[k][j];
path[i][j]=path[k][j];
}
}
}
}
# 2.体会
图入门还可以,但还是有一点点难(其实还可以,在稍微理解一下就会了)
今天打题不太顺利,就打了3题,第二题还爆0了
第三题改了n+1次才大出来
希望明天能简单一点