【自用数据结构】将邻接矩阵转为邻接表

void change(MGraph g1,AGraph& g2){

g1.numvex=g2.numvex;

g1.numedge=g2.numedge;

for(int i = 0; i <g1.numvex ; i++){

g2.adjlist.firstarc = null; //初始化邻接表

}

for(int i=0;i<=g1.numvex;i++)

for(int j=0;i<=g1.numedge;j++)

if(g1[i][j] != 0)

AGraph* s=new AGraph;

s.adjvex = j; //用头插法插入邻接表

s->next=g2.adjlist[ i ].firstarc;

g2.adlist[ i ].firstarc = s;

}

相关推荐
菜鸟233号8 小时前
力扣513 找树左下角的值 java实现
java·数据结构·算法·leetcode
亭上秋和景清8 小时前
指针进阶:函数指针详解
开发语言·c++·算法
leoufung8 小时前
LeetCode 22:Generate Parentheses 题解(DFS / 回溯)
算法·leetcode·深度优先
FMRbpm8 小时前
队列练习--------最近的请求次数(LeetCode 933)
数据结构·c++·leetcode·新手入门
断剑zou天涯9 小时前
【算法笔记】bfprt算法
java·笔记·算法
youngee119 小时前
hot100-47岛屿数量
算法
无限进步_10 小时前
深入理解 C/C++ 内存管理:从内存布局到动态分配
c语言·c++·windows·git·算法·github·visual studio
长安er10 小时前
LeetCode 34排序数组中查找元素的第一个和最后一个位置-二分查找
数据结构·算法·leetcode·二分查找·力扣
点云SLAM11 小时前
C++ 中traits 类模板(type traits / customization traits)设计技术深度详解
c++·算法·c++模板·c++高级应用·traits 类模板·c++17、20·c++元信息
CoderYanger11 小时前
动态规划算法-两个数组的dp(含字符串数组):48.最长重复子数组
java·算法·leetcode·动态规划·1024程序员节