数据结构 图

cpp;gutter:true;</p> <h1>include</h1> <p>using namespace std;</p> <h1>define MaxInt 32767</h1> <h1>define MVNum 100</h1> <p>int i,j,k;</p> <p>typedef struct</p> <p>{</p> <p>char vexs[MVNum];//顶点表</p> <p>int arcs[MVNum][MVNum];//邻接矩阵</p> <p>int vexnum,arcnum;//图当前的点数和边数</p> <p>}AMGraph;</p> <p>void InitUDN(AMGraph &G)//初始化无向图邻接矩阵</p> <p>{</p> <p>for(i=0;i>n>>m;</p> <p>cout<>n>>m;</p> <p>cout<"<>G.vexnum>>G.arcnum;</p> <p>cout<>G.vexs[i];</p> <p>cout<>Graph;</p> <p>switch(Graph)</p> <p>{</p> <p>case 1:InitDN(G);CreateDN(G);break;</p> <p>case 2:InitUDN(G);CreateUDN(G);break;</p> <p>}</p> <p>PrintAMGraph(G);</p> <p>cout<>G.vexnum>>G.arcnum;</p> <p>cout<>G.vertices[i].data;</p> <p>G.vertices[i].firstarc=0;</p> <p>}</p> <p>cout<>n>>m;</p> <p>i=LocateVex(G,n);</p> <p>j=LocateVex(G,m);</p> <p>p=new ArcNode;</p> <p>p->adjvex=j;</p> <p>p->nextarc=G.vertices[i].firstarc;</p> <p>G.vertices[i].firstarc=p;</p> <p>p=new ArcNode;</p> <p>p->adjvex=i;</p> <p>p->nextarc=G.vertices[j].firstarc;</p> <p>G.vertices[j].firstarc=p;</p> <p>cout<>G.vexnum>>G.arcnum;</p> <p>cout<>G.vertices[i].data;</p> <p>G.vertices[i].firstarc=NULL;</p> <p>}</p> <p>cout<>n>>m;</p> <p>int i=LocateVex(G,n);</p> <p>int j=LocateVex(G,m);</p> <p>p=new ArcNode;</p> <p>p->adjvex=j;</p> <p>p->nextarc=G.vertices[i].firstarc;</p> <p>G.vertices[i].firstarc=p;</p> <p>cout<"<";</p> <p>p=G.vertices[i].firstarc;</p> <p>while(p)</p> <p>{</p> <p>cout<adjvex<";</p> <p>p=p->nextarc;</p> <p>}</p> <p>cout<adjvex;</p> <p>if(!visited[pos])</p> <p>{</p> <p>cout<nextarc;</p> <p>}</p> <p>}</p> <p>cout<nextarc;</p> <p>sum=sum+1;</p> <p>}</p> <p>cout<adjvex==i)sum=sum+1;</p> <p>p=p->nextarc;</p> <p>}</p> <p>}</p> <p>cout<nextarc;</p> <p>sum=sum+1;</p> <p>}</p> <p>cout<>chose;</p> <p>if(chose==1)</p> <p>{</p> <p>createUDG(G);</p> <p>break;</p> <p>}</p> <p>else if(chose==2)</p> <p>{</p> <p>createDG(G);</p> <p>break;</p> <p>}</p> <p>}</p> <p>printALGraph(G);</p> <p>BFS_AL(G,G.vertices[0].data);</p> <p>if(chose==1)</p> <p>{</p> <p>calculateUDN(G);</p> <p>}</p> <p>else if(chose==2)</p> <p>{</p> <p>calculateDN(G);</p> <p>}</p> <p>}</p> <p>void main()</p> <p>{</p> <p>int choose;</p> <p>cout<>choose;</p> <p>if(choose==1){AM();break;}</p> <p>else if(choose==2){</p> <p>AL();</p> <p>break;}</p> <p>}</p> <p>}

Original: https://www.cnblogs.com/linlinmailbox/p/16492821.html
Author: 霖霖的信箱
Title: 数据结构 图

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/607361/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • MIT6.828(Step0)——实验环境配置

    实验环境配置 VirtualBox虚拟机为载体,安装Ubuntu $ uname -a Linux eliot-VirtualBox 5.11.0-36-generic #40~2…

    Linux 2023年5月27日
    086
  • Redis基础教程

    redis基础教程 1、 string数据结构 a) SET server:name “fido” b) SETNX server:name1″…

    Linux 2023年5月28日
    077
  • MacOS 使用 siri 控制QQ音乐

    最近发现,macos 可以使用 hi siri 来进行呼出siri了,但是尝试使用QQ音乐播放音乐时,总是不能很好地播放音乐,只能调用本地的音乐app; 考虑我是最新的M1 Pro…

    Linux 2023年6月14日
    0266
  • jmeter 常用函数总结

    继上节课学习的_Randomstring函数,今天来学习全部的函数,进行函数总结。 1、_counter 函数—计数器 第一行值 true \ false :选择true,表示发起…

    Linux 2023年6月8日
    079
  • 试吃香甜可口的《程序员面试指南》

    404. 抱歉,您访问的资源不存在。 可能是网址有误,或者对应的内容被删除,或者处于私有状态。 代码改变世界,联系邮箱 contact@cnblogs.com 园子的商业化努力-困…

    Linux 2023年6月6日
    069
  • Mysql数据库 ALTER 基本操作

    背景: ALTER作为DDL语言之一,工作中经常遇到,这里我们简单介绍一下常见的几种使用场景 新建两个测试表offices 和 employess CREATE TABLE off…

    Linux 2023年6月6日
    0102
  • 本地项目推送到远程仓库(原来可以这么玩)

    前言:请各大网友尊重本人原创知识分享,谨记本人博客: 南国以南i 方式一:在idea中将项目推送至远程仓库 注:此处远程仓库以码云为例 第一步:登录码云,进入个人主页 点击个人头像…

    Linux 2023年6月14日
    0113
  • 罗德岛

    自从转行以后就建博了,一直没有动手写内容,今天开始写。 主要记录技术上的积累和项目上的工作感悟。 这里就是罗德岛,就在这里跳。 Original: https://www.cnbl…

    Linux 2023年6月6日
    079
  • 017 Linux 之啥是 ssh ?

    1 什么是 ssh?有什么用? (1)ssh 是一种协议 (2)ssh 服务 2 ssh 基于密匙的安全验证过程是怎样的? 3 对称加密与非对称加密区别是什么? (1)对称加密 (…

    Linux 2023年5月27日
    0108
  • Spring中的声明式事务管理

    方式一:基于xml配置文件方式 1.创建一个测试类 package com.dzj.service; import com.dzj.dao.UserDaoImpl; import …

    Linux 2023年6月14日
    072
  • THE EVOLUTION OF INTELLECTUAL FREEDOM;

    分享几张有趣的图: 1:http://www.cs.cmu.edu/~dskarlat/ 2022-03-03 17:47 2:https://www.zhihu.com/ques…

    Linux 2023年6月14日
    083
  • linux 修改文件的创建时间—–touch命令

    1、首先不会用touch 可以自己man touch查看并学习,推出man按q 2、举例 给文件修改时间 touch -mt 201909052248 test.log -m mo…

    Linux 2023年6月13日
    091
  • Linux基线加固

    bash;gutter:true; 1、修改vsftp回显信息 (1)检查办法 修改vsftp回显信息: 需在安装VSFTP的情况下检查,未安装可忽略或禁用该项。 查看ftpd_b…

    Linux 2023年6月13日
    080
  • 如何入行软件开发——常见问题及岗位分工

    —— 你以为我每天上班就是为了几个臭钱么!? —— 是的,你说对了…… IT是一个有些让业外同行羡慕嫉妒恨的行业,统计数据来说平均薪资应当是仅次于金融行业的…

    Linux 2023年6月13日
    087
  • Lvs

    Lvs Lvs Lvs简介 体系结构 LVS管理工具 配置 lvs-nat 模式的 httpd 负载集群—http 配置lvs-nat模式的httpd负载集群&#821…

    Linux 2023年6月6日
    0111
  • 关闭linux内核反向路由

    route -n Kernel IP routing tableDestination Gateway Genmask Flags Metric Ref Use Iface0.0….

    Linux 2023年6月8日
    098
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球