template/学习路径/数据结构//链式邻接表.cpp
2025-03-17 00:29:43 +08:00

39 lines
528 B
C++

#include<iostream>
#include<vector>
using namespace std;
const int N=1e5;
struct edge
{
int u,v,w;
};
vector <edge> e;
vector <int> h[N];
void add(int u,int v,int w)
{
e.push_back({u,v,w});
h[u].push_back(e.size()-1);
}
void dfs(int u,int fa)
{
for(int i=0;i<=h[u].size()-1;i++)
{
int j=h[u][i];
int v=e[j].v,w=e[j].w;
if(v==fa)continue;
cout<<u<<","<<v<<","<<w<<"\n";
dfs(v,u);
}
}
int main()
{
int n,m,u,v,w;
cin>>n>>m;
for(int i=1;i<=m;i++)
{
cin>>u>>v>>w;
add(u,v,w);
add(v,u,w);
}
dfs(1,0);
}