数据结构与算法学习--邻接表
来源:互联网 发布:excel数据区域设置 编辑:程序博客网 时间:2024/05/20 05:08
众所周知,图的存储方式有两种,一种是领接矩阵(即二维数组),还有一种是领接表。
领接矩阵适合于稠密图,领接表适用于稀疏图(点多边少)。
领接表即给图中每个顶点创建一个单链表,第i个单链表中的结点表示依附于顶点Vi的边,每个单链表的头节点形成一个一维数组,以便于顶点的访问。具体代码如下:
#include <iostream>using namespace std;#include <malloc.h>typedef struct node //定义用来存图中每个结点的结构体指针{ int data; struct node *next;}Node, *next_node;void insert(next_node Head[], int data, int nums) //给每个结点插入边{ next_node temp = (next_node)malloc(sizeof(Node)); temp->data = data; temp->next = Head[nums]; Head[nums] = temp;} void output(next_node Head[], int len) //输出每个结点所连接的边{ for(int i = 0; i < len; i++) { next_node temp = Head[i]; cout<<i<<"->"; while(temp != NULL) { cout<<temp->data<<" "; temp = temp->next; } cout<<endl; } }int main(){ int n, m; int x, y; cin>>n; next_node *Head = (next_node*)malloc(sizeof(Node)*n); memset(Head, 0, sizeof(Head)*n); for(int i = 0; i < n; i++) { cin>>x>>y; insert(Head, y, x); } output(Head, n); return 0;}
0 0
- 数据结构与算法学习--邻接表
- 数据结构与算法(C语言版)__邻接表
- 《数据结构与算法分析》图论算法--邻接表与拓扑排序
- 算法学习之邻接表
- 数据结构与算法之图的邻接表与邻接矩阵<十二>
- 数据结构学习笔记 --- 图(邻接表)
- 数据结构学习笔记 --- 图(邻接表)
- 《数据结构》C++代码 邻接表与邻接矩阵
- 算法与数据结构基础8:C++实现有向图——邻接表存储
- 数据结构与算法---学习
- 学习数据结构与算法
- 数据结构与算法学习
- 数据结构与算法学习
- 数据结构与算法学习
- 数据结构与算法学习
- 数据结构与算法学习
- 数据结构---邻接表(模板)
- 数据结构-邻接表 单向
- Java中反射机制简介
- Python Class __init__ __del__ 构造,析构过程解析
- druid连接池 异常
- 【js】JSON.stringify 语法实例讲解
- 基于shadowsocks的管理系统--软件工程课程设计
- 数据结构与算法学习--邻接表
- 搭建DUBBO服务框架需要的软件打包下载
- HTML5的<details>和<summary>
- Gitlab使用说明
- jquery即点即改
- 趣味科普长图,论《人类通讯发展史》
- ffmpeg——AVOutputFormat 输出文件格式
- Java 连接数据库及字符编码
- 子父页面的iframe方法调用