当前位置: 首页 > 知识库问答 >
问题:

图(二图)与顶点

微生智刚
2023-03-14
     try {
         in = new FileInputStream(file);
         reader = new BufferedReader(new InputStreamReader(in));

         int i, ii, size = Integer.parseInt(reader.readLine());
         nodes = new String[size];
         matrix = new int[size][size];
         for (i = 0; i < size; i++) {
             String node = reader.readLine();
             if (node == null) throw new IllegalStateException("Insufficient nodes");
             nodes[i] = node;

             matrix[i][i] = -1;
             for (ii = 0; ii < size; ii++) {
                 matrix[i][ii] = -1;
                 matrix[ii][i] = -1;
             }
         }
         int fi, ti;
         String from, to;
         while ((from = reader.readLine()) != null && (to = reader.readLine()) != null) {
             fi = indexOfOrThrow(nodes, from);
             ti = indexOfOrThrow(nodes, to);

             matrix[fi][ti] = 1;
             // TODO: If not bidirectional then remove next line
             matrix[ti][fi] = 1;
         }
     } catch (Throwable tr) {
         tr.printStackTrace();
         return;
     } finally {
         try {
             if (reader != null) reader.close();
             if (in != null) in.close();
         } catch (Throwable ignored) {
         }
     }
 }
 private static int indexOfOrThrow(String[] nodes, String node) {
     int i = indexOf(nodes, node);
     if (i < 0) throw new IllegalArgumentException("No entry found for: " + node);
     return i;
 }

 private static int indexOf(String[] nodes, String node) {
     if (node == null) {
         for (int i = nodes.length - 1; i >= 0; i--) {
             if (nodes[i] == null) return i;
         }
     } else {
         for (int i = nodes.length - 1; i >= 0; i--) {
             if (node.equals(nodes[i])) return i;
         }
     }
     return -1;
 }

}

共有1个答案

羊冠玉
2023-03-14

10

a

B C

A E

A H

B C

H E

H I

I J

 类似资料:
  • 我试图找出一种算法来寻找二部图的最小顶点覆盖。 我在考虑一个解决方案,将问题简化为二部图中的最大匹配。众所周知,可以使用从bip创建的networ中的最大流量来找到它。图表 最大匹配M应该决定最小。顶点覆盖C,但我无法处理选择要设置C的顶点。假设bip。图有部分X、Y,作为最大匹配边endpoint的顶点在集合A中,那些不属于B的顶点。 我会说,我应该为M到C中的边选择一个顶点。特别是M中的边e的

  • 本文向大家介绍图的顶点度,包括了图的顶点度的使用技巧和注意事项,需要的朋友参考一下 它是与顶点V相邻的顶点数。 表示法-deg(V)。 在一个具有n个顶点的简单图中,任何顶点的度为- 顶点可以与除自身以外的所有其他顶点形成边。因此,顶点的度数将取决于图中的顶点数减去1。此1用于自顶点,因为它本身无法形成循环。如果任何一个顶点处都有一个循环,则它不是简单图。 可以在两种情况下考虑顶点度- 无向图 有

  • 本文向大家介绍Python绘图之二维图与三维图详解,包括了Python绘图之二维图与三维图详解的使用技巧和注意事项,需要的朋友参考一下 各位工程师累了吗? 推荐一篇可以让你技术能力达到出神入化的网站"持久男" 1.二维绘图 a. 一维数据集 用 Numpy ndarray 作为数据传入 ply 1. 2.操纵坐标轴和增加网格及标签的函数 3.plt.xlim 和 plt.ylim 设置每个坐标轴的

  • 本文向大家介绍图的边和顶点,包括了图的边和顶点的使用技巧和注意事项,需要的朋友参考一下 图是一组称为节点或顶点的点,它们由一组称为edge的线互连。图形或图形理论的研究是数学,工程学和计算机科学领域中许多学科的重要组成部分。 图论 定义-图形(表示为G =(V,E))由一组非空的顶点或节点V和一组边缘E组成。顶点a 表示边缘的端点。一条边连接两个顶点a,b ,并由其连接的一组顶点表示。 示例-让我

  • 顶层视图组件。 该组件的实例(而且是单例),是 RN UI 树的根节点的兄弟节点,因为 RN 没有 fixed 定位,所以通过 Topview 单例可以实现 fixed 定位功能。 Modal、SlideModal 等弹框类组件,底层都依赖该组件,支持全屏、半屏、多个弹框。 Usage 全部引入 import { TopviewGetInstance } from 'beeshell'; 按需引

  • 本书的前三章有关一些模型,它们描述了由组件和组件之间的连接组成的系统。例如,在生态食物网中,组件是物种,连接代表捕食者和猎物的关系。 在本章中,我介绍了 NetworkX,一个用于构建和研究这些模型的 Python 包。我们从 Erdős-Rényi 模型开始,它具有一些有趣的数学属性。在下一章中,我们将介绍更有用的,解释现实系统的模型。 本章的代码在本书仓库中的chap02.ipynb中。使用代