当前位置: 首页 > wzjs >正文

自己的网站打不开了北京通网站建设

自己的网站打不开了,北京通网站建设,php 图片上载 wordpress,广告公司会建设网站吗图的存储方法有两种,首先就是邻接矩阵 那,什么是邻接矩阵呢,邻接矩阵就是用一个二维数组存储两个结点的邻接关系的一个矩阵 光说可能有的人不懂,我们在图上解释吧 如图,结点之间没有边的地方全部设为无穷大&#xf…

图的存储方法有两种,首先就是邻接矩阵

那,什么是邻接矩阵呢,邻接矩阵就是用一个二维数组存储两个结点的邻接关系的一个矩阵

光说可能有的人不懂,我们在图上解释吧

如图,结点之间没有边的地方全部设为无穷大,1,2表示1到2有一个边,权值就是a[1][2],无向图的话,a[1][2]存一个权值,a[2][1]要存相同的权值;

这就是邻接矩阵,把所有结点之间边的情况存在一个二维数组里,这个二维数组的大小应该是a[N][N] N表示结点个数

也就是空间复杂度为n²,n为结点个数,跟边数无关,适合存储边数多的图,也就是稠密图

#include <iostream>
using namespace std;
const int N = 1010;
int n,m;
int edges[N][N];
int main()
{int n,m;cin >> n >> m;//结点个数和边的个数 //刚开始的时候设置每个结点之间都没有边,嗯。。就设成负无穷好了memset(edges,-0x3f,sizeof edges);for(int i = 1;i<=m;i++){int a,b,c;cin >> a >> b >> c;//ab表示两个结点edges[a][b] = c;edges[b][a] = c;//如果是无向边,相反的情况也要存一下 }	return 0;
}

另一种存储方式就是邻接表了,这种存储方式就是开一个vector数组,然后每个结点都把他有边的结点存起来,但是,光存结点肯定是不行的,这时候我们可以用一个pair类型来存另一个结点以及边的权值

这个就很像我们之前学树的时候的孩子表示法

#include <iostream>
#include <vector>
using namespace std;
const int N = 1010;
int n,m;
typedef pair<int,int> PII;
vector <PII> edges[N];
int main()
{int n,m;cin >> n >> m;//结点个数和边的个数 for(int i = 1;i<=m;i++){int a,b,c;cin >> a >> b >> c;//ab表示两个结点edges[a].push_back({b,c});edges[b].push_back({a,c});}	return 0;
}

当然啦,我们的邻接表除了这种形式存之外,还有别的存储方式,我们还可以用链式前向星来存储

#include <iostream>
#include <vector>
using namespace std;
const int N = 1010;
int n,m;
int h[N],e[2*N],ne[2*N],w[N*2],id;
void add(int a,int b,int c) //把b结点头插到a结点后面的链表里
{id++;e[id] = b;ne[id] = h[a];h[a]=id;w[id] = c;} 
int main()
{int n,m;cin >> n >> m;//结点个数和边的个数 for(int i = 1;i<=m;i++){int a,b,c;cin >> a >> b >> c;//ab表示两个结点add(a,b,c);//把b头插到a的结点里面  add(b,a,c);//把a头插到b的结点里面 }	return 0;
}

好的,这就是我们的几种存储方法,接下来我们还得继续介绍一下图是怎么遍历的

老样子,我们还是分为dfs和bfs遍历

我们先说一下dfs

一路走到黑我们先看邻接矩阵怎么遍历

#include <iostream>
using namespace std;const int N = 5001;
bool st[N];
int edges[N][N];
void dfs(int u)
{cout << u << " ";st[u] = true;for(int v = 1;v<=n;v++){if(edges[u][v]!=-1 && !st[v]){dfs(v);}} 
}
int main()
{int n,m; cin >> n >> m;memset(edges,-1,sizeof(edges));for(int i = 1;i<=m;i++){int a,b,c;cin >> a >> b >> c;edges[a][b] = c;edges[b][a] = c;}return 0;
}

接下来看看邻接表怎么遍历

#include <iostream>
#include <vector>
using namespace std;const int N = 5001;
typedef pair<int,int> PII;
bool st[N];
vector <PII> ret[N];
void dfs(int u)
{cout << u << " ";st[u] = true;for(auto &e : ret[u]){int x = e.first,y = e.second;//x就是连接u的一条边,y就是权值if(!st[x]){dfs(x);} }
}
int main()
{int n,m; cin >> n >> m;for(int i = 1;i<=m;i++){int a,b,c;cin >> a >> b >> c;ret[a].push_back({b,c});ret[b].push_back({a,c});}return 0;
}

链式前向星的dfs

#include <iostream>
#include <vector>
using namespace std;
const int N = 1010;
int n,m;
bool st[N];
int h[N],e[2*N],ne[2*N],w[N*2],id;
void add(int a,int b,int c) //把b结点头插到a结点后面的链表里
{id++;e[id] = b;ne[id] = h[a];h[a]=id;w[id] = c;} void dfs(int u){cout << u << " ";st[u] = true;for(int v = h[u];v;v=ne[v]){int x = e[v];if(!st[x]){dfs(x);}}}
int main()
{int n,m;cin >> n >> m;//结点个数和边的个数 for(int i = 1;i<=m;i++){int a,b,c;cin >> a >> b >> c;//ab表示两个结点add(a,b,c);//把b头插到a的结点里面  add(b,a,c);//把a头插到b的结点里面 }	return 0;
}


文章转载自:

http://4QMT10xG.fksxs.cn
http://ir5H7osr.fksxs.cn
http://uEVkzSf6.fksxs.cn
http://yRCllG3P.fksxs.cn
http://Q1ja5X2Q.fksxs.cn
http://1seLzAbo.fksxs.cn
http://tBUlcxSb.fksxs.cn
http://5w2qyndE.fksxs.cn
http://inEgz0bR.fksxs.cn
http://LXRqdxlF.fksxs.cn
http://YjVJKaXo.fksxs.cn
http://Sy8vZEdj.fksxs.cn
http://PkrQg0fU.fksxs.cn
http://9Yxm4tSH.fksxs.cn
http://B3lYizz2.fksxs.cn
http://sD5UD4jn.fksxs.cn
http://AaVjILEG.fksxs.cn
http://ayIC16IU.fksxs.cn
http://mryvVfze.fksxs.cn
http://8raCscC4.fksxs.cn
http://Mo4ylUER.fksxs.cn
http://wzubsh0T.fksxs.cn
http://D87U9d1p.fksxs.cn
http://lWJQAV5w.fksxs.cn
http://g3prWdYs.fksxs.cn
http://LMls3iZ8.fksxs.cn
http://9EZreqYp.fksxs.cn
http://tO96wl6e.fksxs.cn
http://VetWauGR.fksxs.cn
http://mEnYQDGc.fksxs.cn
http://www.dtcms.com/wzjs/617921.html

相关文章:

  • 郑州网站建设企业推荐怎么做电商运营
  • 上海网站开发定制wordpress标签分级
  • 网站编辑适不适合男生做wordpress 阌栾
  • 手机网站和电脑网站开发wordpress seo
  • 红安建设局官方网站河南小学网站建设
  • 临沂做网站wyjzgzs设计logo怎么设计
  • 企业为什么要建站点呢广州做网站公司电话
  • 商城网站大全做网站改版的
  • 沈阳市建设局网站首页嘉兴网络项目建站公司
  • 免费软件不收费网站WordPress相册插件pro
  • 网站建立策划书郑州设计logo公司
  • 6731官方网站下载it培训学校哪家好
  • 如何做学校的网站设计项目三的设计与制作
  • html5网站开发语言的有点亚马逊电商平台入口
  • 制作外贸网站的公司wordpress能放视频
  • iis网站批量导入如何去掉wordpress版权信息
  • 沈阳酒店企业网站制作温州网站排名团队
  • 沧州网站建设代理价格网站前端建设都需要什么
  • 站长素材网wordpress动态新闻代码
  • 建设银行个人网站打不开自己注册域名
  • 企业站网站公司免费网站
  • 义乌购网站做代销怎么样网盟推广平台
  • 上海网站推广有哪些用安卓手机做网站主机
  • 郑州高新区建设环保局网站wordpress p3
  • 招聘信息网站建设网站建设的实训技术总结
  • 网站建设费可分摊几年台州建设局网站
  • 做网站给菠菜引流玉林市住房和城乡建设局网站
  • 制作完整网站需要掌握哪些知识wordpress 字
  • 成都网站开发排名网站运营实训报告总结
  • 绑定ip地址的网站建盏大师排名表及落款