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

链式前向星

时间:2023-03-23 20:46:23浏览次数:31  
标签:cnt int next edges static 链式 Edge 前向星

image-20230323091831091

public class 链式前向星 {
	public static void main(String[] args) {
		add(1, 3, 5);
		add(1, 2, 4);
		add(1, 5, 8);
		visit(1);
	}

	static int N = 1005;
	static int cnt = 0;// 边的编号
	static int[] first = new int[N];
	static Edge[] edges = new Edge[N];

	/**
	 * 遍历以 u 为起点的所有边
	 * 
	 * @param u 起点
	 */
	static void visit(int u) {
		for (int i = first[u]; i != 0; i = edges[i].next) {
			System.out.println(u + "->" + edges[i].to + "的权值为" + edges[i].w);
		}
	}

	/**
	 * 添加一条边(单向添加)
	 * 
	 * @param u 边的起点
	 * @param v 边的终点
	 * @param w 边的权值
	 * 
	 * 注意:这里的 edges 数组仅仅分配了数组空间,
	 * 空间中的每一个对象元素并没有进行初始化,
	 * 要使用 new 关键字进行处理才能对对象进行使用
	 */
	static void add(int u, int v, int w) {
		edges[++cnt] = new Edge(v, w, first[u]);// cnt = 0 这个编号舍弃不用
		first[u] = cnt;// 更新
	}
}

/**
 * 边类 
 * 一共有三个属性
 */
class Edge {
	int to;// 终点
	int w;// 边的权值
	int next;// 下一条边

	public Edge(int to, int w, int next) {
		super();
		this.to = to;
		this.w = w;
		this.next = next;
	}
}

image-20230323202830632

标签:cnt,int,next,edges,static,链式,Edge,前向星
From: https://www.cnblogs.com/ChuenSan/p/17249331.html

相关文章

  • 3.9 队列的链式表示和实现
    3.5.3队列的链式表示和实现适用于用户无法估计所用队列的长度,则适宜采用该类型的队列链式队列的结构图如下所示链队列的类型定义//这里是定义是每个节点类型t......
  • Java 建造者模式/链式调用 简单Demo
    最近,公司同事要求我给他们讲一下RxJava,为了更清晰的说明其架构,.简单写了一个链式调用的小Demo,分享给大家/**作者:赵星海(CSDN-深海呐)*时间:2019年3月19日16:56:32*......
  • jquery链式调用原理
    jquery选择器$('selector')返回的不是数组,而是一个被封装好的jQuery对象,查询到的每一个节点,都被以下标为属性的方式添加到jQuery对象,jQuery对象上的方法包含对象本身的方法......
  • vue中使用链式操作符?.
    1、安装babel依赖@babel/plugin-proposal-optional-chainingnpminstall'@babel/plugin-proposal-optional-chaining'--save-dev2、添加到babel.config.js中mod......
  • 链式前向星介绍以及原理
    1链式前向星1.1简介链式前向星可用于存储图,本质上是一个静态链表。一般来说,存储图常见的两种方式为:邻接矩阵邻接表邻接表的实现一般使用数组实现,而链式前向星就......
  • 抽象函数求导(区别于复合函数求导—虽然都是用的链式法则)
    高中数学:抽象函数求导法则_哔哩哔哩_bilibili ......
  • C/C++ 数据结构链式队列的定义与实现
    #include<iostream>#include<Windows.h>usingnamespacestd;typedefstruct_QNode{intdata;struct_QNode*next;}QNode;typedefstruct{QNode......
  • 【CCCC】L2-030 冰岛人 (25分) 模拟题,二叉树链式存储,从底部向上
    problemL2-030冰岛人(25分)2018年世界杯,冰岛队因1:1平了强大的阿根廷队而一战成名。好事者发现冰岛人的名字后面似乎都有个“松”(son),于是有网友科普如下:iceland.JPG冰岛......
  • 链式前向星
    链式前向星图的存储一般有两种:邻接矩阵、前向星。邻接矩阵很方便,但是缺点也明显:1.若图是稀疏图,边很少,开二维数组a[][]浪费;2.若点很多(如10000个点)a[10000][10000]又会爆.......
  • EFore 分页查询 链式封装
    此文提供一个初步的封装思路,简化代码编写。1.先封装一个ResultSet存放查询结果:publicclassResultSet<T>{///<summary>///总记录数......