图集表示方法

图集的表示方法主要有以下几种:

邻接矩阵法

好处:方便找任一顶点的所有邻接点,节约稀疏图的空间。

坏处:对于检查任意一对顶点间是否存在边并不方便。

代码示例

邻接链表法

好处:对于检查任意一对顶点间是否存在边方便,适合稀疏图。

坏处:需要更多的存储空间来存储边的信息。

代码示例

include

include

using namespace std;

typedef int Vertex;

typedef struct Edge {

Vertex dest;

WeightType weight;

Edge* next;

} Edge;

typedef struct Graph {

Vertex numOfVertices;

Edge adjList;

} Graph;

Graph* createGraph(Vertex numOfVertices) {

Graph* graph = new Graph();

graph->numOfVertices = numOfVertices;

graph->adjList = new Edge*[numOfVertices];

for (Vertex i = 0; i < numOfVertices; i++) {

graph->adjList[i] = nullptr;

}

return graph;

}

void addEdge(Graph* graph, Vertex src, Vertex dest, WeightType weight) {

Edge* newEdge = new Edge();

newEdge->dest = dest;

newEdge->weight = weight;

newEdge->next = graph->adjList[src];

graph->adjList[src] = newEdge;

}

void printGraph(Graph* graph) {

for (Vertex i = 0; i numOfVertices; i++) {

Edge* edge = graph->adjList[i];

cout << "Vertex "<< i < ";

while (edge != nullptr) {

cout << "(" <dest << ", " <weight << ") ";

edge = edge->next;

}

cout << endl;

}

}

int main() {

Graph* graph = createGraph(3);

addEdge(graph, 0, 1, 1);

addEdge(graph, 0, 2, 1);

addEdge(graph, 1, 2, 1);

printGraph(graph);

return 0;

}

我们致力于保护作者版权,注重分享,被刊用文章【图集表示方法】因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(本人原创文章,百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!发布者:云建筑,转转请注明出处:https://www.yunjianzhu.com/4724.html

(0)
云建筑的头像云建筑
上一篇 2025年1月14日
下一篇 2025年1月14日

相关推荐

  • 非注册类继续教育评职称

    非注册类继续教育的评职称要求如下: 继续教育的重要性 继续教育在职称评审中扮演着至关重要的角色。它是评职称的必备条件,同时也是衡量专业人士持续学习和适应新知识的重要标志。 学时要求 专业技术人员每年接受继续教育学习时间累计不少于80小时,其中专业科目不少于56小时,公需科目不少于24小时。此外,不同地区和职称级别的继续教育学时要求可能有所不同,需要结合所在地…

    建筑资讯 2025年9月2日
    1070
  • 大专工程师怎么考职称

    大专工程师考取职称的途径主要有以下几种: 正常申报 大专毕业且从事专业技术工作十五年以上,并担任中级职务五年以上的人员,可以申报高级工程师职称评定。 破格申报 对于确有真才实学、成绩显著、贡献突出的人员,可以不受学历和资历的限制,破格申报高、中级职务任职资格。 人事考试 通过国家承认的相关考试获得工程师资格证书。例如,中专、大专、本科等学历的人员可以通过相应…

    建筑资讯 2025年10月8日
    980
  • 临时建造师考哪个专业

    选择临时建造师考哪个专业,主要 应根据个人的兴趣、专业背景和职业规划来决定。以下是一些适合报考建造师考试的专业: 建筑工程类专业 建筑工程技术:涵盖建筑结构、施工技术等方面的知识。 建筑工程管理:涉及工程管理、工程经济等内容。 建筑设计:包括建筑设计原理、建筑历史等。 土木工程类专业 土木结构:研究建筑物、桥梁、道路等结构的设计与施工。 施工工艺:关注施工过…

    建筑资讯 2025年2月15日
    2280
  • 桥梁建造师液压管理攻略

    在游戏《桥梁建造师》中,液压控制器是用于控制桥梁升降的重要装置。以下是如何使用液压控制器的攻略: 找到液压控制器 液压控制器通常位于桥梁的一端,玩家需要先找到它。 调整控制器方向 根据需要,可以调整液压控制器的方向,使其向上或向下倾斜。 调整控制器高度 通过调整液压控制器的位置,可以控制桥梁的升降高度。 激活液压控制器 在调整好控制器方向和高度后,可以激活液…

    建筑资讯 2025年2月14日
    1950
  • 程序员应该考什么职称好

    对于程序员来说,选择考取的职称应 根据个人的兴趣、职业规划以及市场需求来决定。以下是一些建议的职称及其适用情况: 高级程序员 高级程序员是相对于初级和中级程序员而言的,具备更深入的专业知识和技能,具有更高的工作经验和能力。考取高级程序员可以展示一个程序员在编程领域的深度和熟练度,同时也是晋升职位和薪资增长的重要条件。 计算机技术与软件专业技术职务资格证书(计…

    建筑资讯 2025年8月18日
    1890

联系我们

邮件:xp0123456789@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息