首页 > 其他分享 >链式前向星

链式前向星

时间:2025-01-16 09:53:59浏览次数:1  
标签:head int 存储 tot next 链式 节点 前向星

我认为我需要链式前向星和一个博客园--shuxin5``
很简单就是用数组模拟把相同起点的边挂在一起,换句话说就是链表的所有数据是从i出发的所有边的集合,于是需要用next来标记下一个边的编号
一个节点用结构体存储----struct edge
内部含有
一个head[i]数组:用来存储此节点的第一条边
我们可以通过head[i]快速找到从节点i出发的所有边
上文提到的next:来存储下一条边
我们可以通过next快速找到从同一个节点出发的下一条边
变量z: 存储边的终点
变量cnt: 存储边的总数
定义:
strcut edge{int next,z,cnt;}
初始化:初始化head[i]=-1表示无边可连边
加边函数(这是关键
//加边操作:这段代码是核心,也很好理解就是不断把边的编号连在链表上(tot表示边的编号)
void AddEdge(int a,int b,int c)
{
//加边函数,连一条以a为起点到达b权值为c的边
node[tot].next = head[a];node[tot].to = b;node[tot].flag = c;head[a] = tot++;
}
遍历
for(int i=head[u];~i;i=edge[i].next){
//something
}
其实不难多写就背下来了

标签:head,int,存储,tot,next,链式,节点,前向星
From: https://www.cnblogs.com/2xinxin/p/18674335

相关文章

  • 数据结构之链式二叉树
    前言:前面我们学习了树相关的概念及堆的实现,今天来看看二叉树的实现。正式实现二叉树前,我们先了解一些基础知识。对于二叉树基础知识不清楚的可以观看数据结构------树这篇文章,回顾一下知识,有助于理解二叉树。二叉树的遍历方式都有哪些呢?.前序遍历:按照根节点,左节点,右节......
  • Promise是如何实现then的链式调用的?
    Promise对象的then方法返回一个新的Promise对象,这是实现链式调用的关键。每一个then都会返回一个新的Promise,而这个新的Promise的结果取决于then里面的回调函数的返回值。以下是一个简化的Promise和then方法的实现,用于说明链式调用是如何工作的:functionPromise......
  • 思维的进化:从链式推理到元链式推理的算法探秘
    ......
  • 「 Java基础-链式调用 」Java开发中如何让你的代码看起来更优雅?试试链式调用?
    一、前言我们日常在写业务代码的时候,经常会遇到一种场景,比如一个对象有很多属性,比如用户对象有很多属性:用户名、用户ID、用户性别、用户居住地址、用户工作类型、用户联系方式等等,当我们要构建一个用户对象的时候,就要不断的去set,get如下代码所示:publicclassUser{......
  • 链式法则的详细讲解-ChatGPT4o作答
    链式法则的详细讲解**链式法则(ChainRule)**是微积分中的重要法则之一,用于处理复合函数的导数问题。它告诉我们,如何计算一个函数内部嵌套另一个函数时的导数。链式法则在单变量和多变量微积分中都有重要作用,广泛应用于物理学、工程学、机器学习等领域。1.链式法则的基本......
  • 「Mac玩转仓颉内测版53」基础篇15 - 函数组合与链式调用
    本篇将介绍函数组合(FunctionComposition)与链式调用(Chaining)。通过组合多个小函数或方法,可以有效提升代码的可读性与复用性,避免重复逻辑。链式调用则进一步简化了代码结构,使逻辑表达更加流畅。关键词函数组合链式调用代码复用简化逻辑一、函数组合的概念函数组合指将......
  • 链式队列的实现及其应用
    目录一、概念二、链式队列的结构模型三、链式队列的实现3.1创建3.2入队3.3出队3.4判断是否为空3.5释放队列3.6清空队列四、应用一、概念链式队列,顾名思义,是基于链表实现的不同于普通链表,它在一端插入,另一端删除而由于链表中特殊的存在(头结点、尾结点),正好可以用......
  • [掌握LangChain:如何有效传递数据到链式步骤中]
    掌握LangChain:如何有效传递数据到链式步骤中在构建链式程序时,能够在不同步骤之间有效地传递数据是至关重要的。在这篇文章中,我们将学习如何在LangChain中使用RunnablePassthrough类轻松处理这一任务,以及如何结合RunnableParallel来实现复杂的数据流传递。引言当我们在编......
  • 线性表链式存储的骚操作
    快慢指针的应用快慢指针的思想是在进行链表遍历的时候,用两个指针同时指向链头,每次移动的步长不一样。最后的遍历的结果就是,快的已经走完了,慢的还在链表中间的某一个节点上。使用场景,一次遍历,定位链表中指定位置。这里的位置是相对位置,比如中间位置,三分之二位置,或者是三分之一......
  • 从最浅层剖析C语言————第六节(深入了解数组传参、嵌套调用以及链式访问)
    目录 1.前情提要2.return语句3.数组作为函数参数4.嵌套调用和链式访问4.1函数的嵌套调用4.2链式访问 1.前情提要前面我们讲到了函数里面的形参和实参的概念,形参顾名思义就是一个形式上的参数,不参与实际的运算,而实参则刚好相反但是实参是需要传递给形参的,他......