You need to enable JavaScript to run this app.
最新活动
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

JGraphT中压缩图的算法(删除某些边和顶点)

可以通过遍历图来删除指定的边和顶点来压缩JGraphT图。以下是Java代码示例:

import org.jgrapht.Graph;
import org.jgrapht.Graphs;
import org.jgrapht.alg.interfaces.SpanningTreeAlgorithm.SpanningTree;
import org.jgrapht.alg.spanning.PrimMinimumSpanningTree;
import org.jgrapht.graph.DefaultEdge;
import org.jgrapht.graph.SimpleDirectedWeightedGraph;
import org.jgrapht.graph.SimpleWeightedGraph;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Random;

public class JGraphTCompression {

    public static void main(String[] args) {
        SimpleWeightedGraph<Integer, DefaultEdge> graph = new SimpleWeightedGraph<>(DefaultEdge.class);

        for (int i = 0; i < 10; i++) {
            graph.addVertex(i);
        }

        Random rand = new Random();

        for (int i = 0; i < 15; i++) {
            int v1 = rand.nextInt(10);
            int v2 = rand.nextInt(10);
            if (v1 != v2 && !graph.containsEdge(v1, v2)) {
                graph.addEdge(v1, v2);
                graph.setEdgeWeight(graph.getEdge(v1, v2), rand.nextInt(10));
            } else {
                i--;
            }
        }

        System.out.println("Original graph:\n" + graph.toString() + "\n");

        List<Integer> verticesToDelete = new ArrayList<>();
        verticesToDelete.add(1);
        verticesToDelete.add(3);

        List<DefaultEdge> edgesToDelete = new ArrayList<>();
        edgesToDelete.add(graph.getEdge(0, 5));
        edgesToDelete.add(graph.getEdge(2, 4));

        compressGraph(graph, verticesToDelete, edgesToDelete);
        System.out.println("Compressed graph:\n" + graph.toString());
    }

    public static void compressGraph(Graph<Integer, DefaultEdge> graph, List<Integer> verticesToDelete, List<DefaultEdge> edgesToDelete) {
        graph.removeAllVertices(verticesToDelete);
        graph.removeAllEdges(edgesToDelete);
    }
}

该代码实现了以下步骤:

  1. 创建一个带有10个顶点和15个随机加权边的无向图。
  2. 解压缩指定顶点和边的图形。
  3. 打印出原始和压缩后的图形。

在这种情况下,图形被压缩,删除了顶点1和3

本文内容通过AI工具匹配关键字智能整合而成,仅供参考,火山引擎不对内容的真实、准确或完整作任何形式的承诺。如有任何问题或意见,您可以通过联系service@volcengine.com进行反馈,火山引擎收到您的反馈后将及时答复和处理。
展开更多
面向开发者的云福利中心,ECS 60元/年,域名1元起,助力开发者快速在云上构建可靠应用

社区干货

万字长文带你漫游数据结构世界|社区征文

数据结构是指相互之间存在一种或多种特定关系的[数据元素](https://baike.baidu.com/item/数据元素/715313)的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储[效率](https://baike.baidu.com/item/效率/868847)。数据结构往往同高效的检索[算法](https://baike.baidu.com/item/算法/209025)和[索引](https://baike.baidu.com/item/索引/5716853)技术有关。简单讲,数据结构就是组织,管理以及存储数据的方式。虽...

火山引擎 DataLeap 套件下构建数据目录(Data Catalog)系统的实践

Meta Store:存放全量元数据和血缘关系,当前使用的是HBase- Index Store:存放用于加速查询,支持全文索引等场景的索引,当前使用的是ElasticSearch- Model Store:存放推荐、打标等的算法模型信息,使用HDFS,... 通过模拟单个超大表写入,并使用arthas火焰跟踪相关代码, 火山引擎 DataLeap 研发人员发现在每个JanusGraph图顶点写入时,都会做guid的全局唯一性校验,这里十分耗时。![picture.image](https://p3-volc-communi...

2022年终总结-两年Androider的技术成长之路|社区征文

这里主要大致整理下不同的方向,jym如果想要提升自己的话可以从这几个方面去找资料:>- 知识管理法>- 高效时间管理,GTD时间管理法,生活黑客的时间管理>- 思辨能力,独立思考,系统式思维能力>- 创新思维SIT>- 第一性原理,逆向思考力>.......#### 推荐书籍- 《经验的讲解》- 克里斯坦的《创新者窘境》- 《了不起的我》- 《坏比好厉害》- 《吾心可鉴-澎湃的福流》- 《指导生活的算法:人类生活中的计算机科学》- 《忧郁的...

干货|底层技术揭秘!如何搭建“广告投放”场景下的A/B测试平台

**可以使用设计模式中的模板方法来避免此类问题。** 如下图所示,模板方法模式定义了一个授权过程的骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。... CLickHouse中的 Map 字段可以很好的支持报表类多字段的拓展性。在最终的查询分析时,需要综合MySQL和CLickHouse数据得到报告。### ### ### **/ DAG /**在图论中, **如果一个有向图从任意顶点出...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

JGraphT中压缩图的算法(删除某些边和顶点) -优选内容

万字长文带你漫游数据结构世界|社区征文
数据结构是指相互之间存在一种或多种特定关系的[数据元素](https://baike.baidu.com/item/数据元素/715313)的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储[效率](https://baike.baidu.com/item/效率/868847)。数据结构往往同高效的检索[算法](https://baike.baidu.com/item/算法/209025)和[索引](https://baike.baidu.com/item/索引/5716853)技术有关。简单讲,数据结构就是组织,管理以及存储数据的方式。虽...
火山引擎 DataLeap 套件下构建数据目录(Data Catalog)系统的实践
Meta Store:存放全量元数据和血缘关系,当前使用的是HBase- Index Store:存放用于加速查询,支持全文索引等场景的索引,当前使用的是ElasticSearch- Model Store:存放推荐、打标等的算法模型信息,使用HDFS,... 通过模拟单个超大表写入,并使用arthas火焰跟踪相关代码, 火山引擎 DataLeap 研发人员发现在每个JanusGraph图顶点写入时,都会做guid的全局唯一性校验,这里十分耗时。![picture.image](https://p3-volc-communi...
2022年终总结-两年Androider的技术成长之路|社区征文
这里主要大致整理下不同的方向,jym如果想要提升自己的话可以从这几个方面去找资料:>- 知识管理法>- 高效时间管理,GTD时间管理法,生活黑客的时间管理>- 思辨能力,独立思考,系统式思维能力>- 创新思维SIT>- 第一性原理,逆向思考力>.......#### 推荐书籍- 《经验的讲解》- 克里斯坦的《创新者窘境》- 《了不起的我》- 《坏比好厉害》- 《吾心可鉴-澎湃的福流》- 《指导生活的算法:人类生活中的计算机科学》- 《忧郁的...
干货|底层技术揭秘!如何搭建“广告投放”场景下的A/B测试平台
**可以使用设计模式中的模板方法来避免此类问题。** 如下图所示,模板方法模式定义了一个授权过程的骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。... CLickHouse中的 Map 字段可以很好的支持报表类多字段的拓展性。在最终的查询分析时,需要综合MySQL和CLickHouse数据得到报告。### ### ### **/ DAG /**在图论中, **如果一个有向图从任意顶点出...

JGraphT中压缩图的算法(删除某些边和顶点) -相关内容

精选文章|iOS内存泄漏监控实践

实际场景中可能是多种内存模型交错,通过图状数据结构以及相关算法分析,可以把具体的内存泄漏问题转化为抽象的数据结构与算法问题,具体解法可以多种多样。 **三、技术方案****定义内存泄漏**... 可以生成以页面对象为顶点,向每一个引用的对象发出一条弧的图,依次遍历,可以生成以当前页面为顶点,包含当前页面中所有对象以及引用关系的有向图。 强引用指针指向当前页面对象,引用关系图扫描完成,解...

火山引擎A/B测试“广告投放实验”基础能力重构实践

可以使用设计模式中的模板方法来避免此类问题。如下图所示,模板方法模式定义了一个授权过程的骨架,而将一些步骤延迟到子类中,使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。对应到授权业务上... CLickHouse中的 Map 字段可以很好的支持报表类多字段的拓展性。 在最终的查询分析时,需要综合MySQL和CLickHouse数据得到报告。 2. ### DAG: 在图论中,如果一个有向图从任意顶点出发无法经过若...

得物极光蓝纸箱尺寸设计实践

所以需要用比较快的速度完成建模和计算。在这件事上,业务方也无法给出一些特别明确的准则,例如具体要算的综合目标中是包含运输成本的,这之中包含承运商的分配算法规则和他们的运费模板,将这些因素直接纳入到箱型... 通常主要包括精确解算法和启发式算法:精确方法主要是用单纯形法(线性规划)或者一些迭代的方法(非线性规划)再结合分枝定界法找到我们要的整数解。精确方法如果是线性规划问题能通过单纯形法在可行域的顶点中找到全...

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

视频数据流节点

表明在部署数据流过程中,是否必须为这些控制参数设定具体的值。在部署数据流过程中,有以下情形需要进行数据流编排:编辑数据流模板的版本:该方式下,您可以增节点、连接节点,以及设置节点的控制参数。 编辑数据流实... Http推送 ✅ ❌ 将消息元数据作为 Http 请求推送至指定的 URL。 Ekuiper推送 ✅ ✅ 将消息元数据推送到同一台一体机上的 Ekuiper 时序数据流实例。 处理节点 节点名称 适用于 DeepStream 适用于 DLSt...

能力介绍

产品简介 支持检测图片中的银行卡,准确地返回银行卡的结构化信息。本产品提供两种服务版本,V1版本提供卡号信息和卡号的四顶点位置坐标,V2版本还额外提供银行编号、银行名称、过期时间、过期时间坐标信息以及卡类型等详细信息。 产品优势识别字段齐全: 支持对银行卡关键字段的检测和识别,包含银行卡卡号、银行名称、卡类型等多种字段信息。 识别准确率高: 基于深度学习算法和OCR技术,银行卡识别精度处于业界领先水平,适应模糊、曝...

特惠活动

热门爆款云服务器

100%性能独享,更高内存性能更佳,学习测试、web前端、企业应用首选,每日花费低至0.55元
60.00/1212.00/年
立即购买

域名注册服务

cn/top/com等热门域名,首年低至1元,邮箱建站必选
1.00/首年起32.00/首年起
立即购买

DCDN国内流量包100G

同时抵扣CDN与DCDN两种流量消耗,加速分发更实惠
2.00/20.00/年
立即购买

产品体验

体验中心

云服务器特惠

云服务器
云服务器ECS新人特惠
立即抢购

白皮书

一图详解大模型
浓缩大模型架构,厘清生产和应用链路关系
立即获取

最新活动

爆款1核2G共享型服务器

首年60元,每月仅需5元,限量秒杀
立即抢购

火山引擎增长体验专区

丰富能力激励企业快速增长
查看详情

数据智能VeDI

易用的高性能大数据产品家族
了解详情

一键开启云上增长新空间

立即咨询