【坐在马桶上看算法】算法8:巧妙的邻接表(数组实现)
来源:互联网 发布:java单例模式例子 编辑:程序博客网 时间:2024/04/30 02:28
1
2
3
4
5
6
4 5
1 4 9
4 3 8
1 2 5
2 4 6
1 3 7
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int
n,m,i;
//u、v和w的数组大小要根据实际情况来设置,要比m的最大值要大1
int
u[6],v[6],w[6];
//first和next的数组大小要根据实际情况来设置,要比n的最大值要大1
int
first[5],next[5];
scanf
(
"%d %d"
,&n,&m);
//初始化first数组下标1~n的值为-1,表示1~n顶点暂时都没有边
for
(i=1;i<=n;i++)
first[i]=-1;
for
(i=1;i<=m;i++)
{
scanf
(
"%d %d %d"
,&u[i],&v[i],&w[i]);
//读入每一条边
//下面两句是关键啦
next[i]=first[u[i]];
first[u[i]]=i;
}
1
2
3
4
5
6
k=first[1];
// 1号顶点其中的一条边的编号(其实也是最后读入的边)
while
(k!=-1)
//其余的边都可以在next数组中依次找到
{
printf
(
"%d %d %d\n"
,u[k],v[k],w[k]);
k=next[k];
}
1
2
3
4
5
6
7
8
9
for
(i=1;i<=n;i++)
{
k=first[i];
while
(k!=-1)
{
printf
(
"%d %d %d\n"
,u[k],v[k],w[k]);
k=next[k];
}
}
0 0
- 【坐在马桶上看算法】算法8:巧妙的邻接表(数组实现)
- 【坐在马桶上看算法】算法8:巧妙的邻接表(数组实现)
- 【坐在马桶上看算法】算法8:巧妙的邻接表(数组实现)
- 【坐在马桶上看算法】算法8:巧妙的邻接表(数组实现)
- 【坐在马桶上看算法】算法8:巧妙的邻接表(数组实现)(自啊哈)
- [转]【坐在马桶上看算法】算法8:巧妙的邻接表(数组实现)--作者:ahalei
- 坐在马桶上看算法
- 算法8:巧妙的邻接表(数组实现)
- 算法8:巧妙的邻接表(数组实现)
- 坐在马桶上看算法:快速排序
- 坐在马桶上看算法:快速排序
- 坐在马桶上看算法:快速排序
- 坐在马桶上看算法:快速排序
- 坐在马桶上看算法:快速排序
- 坐在马桶上看算法:快速排序
- 坐在马桶上看算法:快速排序
- Floyd简述-坐在马桶上看算法
- 坐在马桶上看算法:快速排序
- 【啊哈!算法】算法11:堆——神奇的优先队列(上)
- 【坐在马桶上看算法】算法12:堆——神奇的优先队列(下)
- 韩顺平 javascript教学视频_学习笔记9_js函数调用过程内存分析_js函数细节
- 【Python】抓取拉勾网全国Python的招聘信息
- Apache Maven 入门篇 ( 上 )
- 【坐在马桶上看算法】算法8:巧妙的邻接表(数组实现)
- UIAlertView简单记载
- [转]php与java通用AES加密解密算法
- Unity在BitMap中使用数字表示图片
- jquery radio的取值 radio的选中 radio的重置
- MATLAB快捷键大全
- 韩顺平 javascript教学视频_学习笔记10_js一维数组_一维数组细节
- Android Studio多渠道打包和代码混淆教程
- Alcatraz