邻接表的几种存储方式
来源:互联网 发布:mac svn客户端下载 编辑:程序博客网 时间:2024/05/06 19:57
总的来说有以下三种方式:
链表:
//存储结构 struct Node{ int vex; Node* next;}; Node *head[M]; //添加一个有向边 void addADJ(int u,int v){ Node *p; p=(Node*)malloc(sizeof(Node)); p->vex=v; p->next=head[u]; head[u]=p;}//遍历for(Node *p=head[u];p!=NULL;p=p->next) int v=p->vex;//连接u的结点v//初始化memset(head,NULL,sizeof(head));链式前向星:(有点儿静态链表意思)
//存储结构struct Edge{ int next; int to;}edge[M];int head[M];int cnt=0; //添加一个有向边void add(int u,int v){ edge[cnt].to=v; edge[cnt].next=head[u]; head[u]=cnt++;}//遍历for(int i=head[u];~i;i=edge[i].next) int v=edge[i].to; //初始化memset(head,-1,sizeof(head));stl库:
//存储结构vector<int> node[M];//添加一个有向边node[u].push_back(v);//遍历for(int i=0;i<node[u].size();i++) int v=node[u][i];
阅读全文
1 0
- 邻接表的几种存储方式
- 邻接表的存储方式
- 图的存储方式--邻接表法
- 2011.6.18 图的邻接表存储方式
- 数据结构(14):图的存储方式(邻接矩阵、邻接表....)
- 图的存储方式:邻接矩阵和邻接表【基础】
- 邻接表存储有向图的两种遍历方式
- 建邻接表的两种方式
- 图的邻接表存储
- 图的邻接表存储
- 图的邻接表存储
- 图的存储-邻接表
- 图的邻接表存储
- 图的邻接表存储
- 图的邻接表存储
- 图的邻接表存储
- 图的邻接表存储
- 图的邻接表存储
- opencv学习笔记之一,安装及运行example
- 【Issues-Webpack-N1】extract-text-webpack-plugin使用css-loader报错
- vs2010的一个bug,需要sp1或者如下解决方式
- threadSynchronized
- HTTP与HTTPS的区别
- 邻接表的几种存储方式
- 套接字编程
- Java集合框架-ArrayList
- Http基础概念
- centos源码安装redis
- shell -- ch15呈现数据
- promise
- Android Studio -Fragment
- Linux基础指令