JUNG
http://jung.sourceforge.net/
Java Universal Network/Graph Framework:提供有向图,无向图,混合网络,以及各种展现接口,只要不是绘制特别巨大的图,效过还可以。
构造一个图:
写道
Graph<Integer, String> g2 = new SparseMultigraph<Integer, String>();
g2.addVertex((Integer)1);
g2.addVertex((Integer)2);
g2.addVertex((Integer)3);
g2.addEdge("Edge-A", 1,3);
g2.addEdge("Edge-B", 2,3, EdgeType.DIRECTED);
g2.addEdge("Edge-C", 3, 2, EdgeType.DIRECTED);
g2.addEdge("Edge-P", 2,3); // A parallel edge
System.out.println("The graph g2 = " + g2.toString());
很适合演示数据结构中的 图论和Tree结构
Dijkstra,EMP最大网络流算法,聚类算法都有,还不错
如输出Dijkstra路径:
DijkstraShortestPath<MyNode,MyLink> alg = new DijkstraShortestPath(g);
List<MyLink> l = alg.getPath(n1, n4);
System.out.println("The shortest unweighted path from" + n1 +
" to " + n4 + " is:");
System.out.println(l.toString());
R:听说简单易用,也没有试过
GraphViz:没有用过,听说不错
- 大小: 9.8 KB
分享到:
相关推荐
Java Universal Network/Graph Framework(JUNG)是一个开源软件库,设计用于处理各种类型的图数据结构和算法。JUNG2-alpha2是该框架的一个版本,它提供了丰富的功能来支持图形可视化和分析。本文将深入探讨JUNG2-...
JUNG2(Java Universal Network/Graph Framework)是JUNG(Java Universal Network/Graph)框架的一个重大修订版本,旨在为Java开发人员提供一个强大且灵活的图论计算和社交网络分析(SNA)工具包。此教程旨在通过...
标题中的"jetson_nano-master_by_byna11sina11.zip"表明这是一个与Jetson Nano开发板相关的项目,由用户byna11sina11基于JK Jung的工作进行了优化,特别适合国内用户。Jetson Nano是NVIDIA推出的一款低功耗、高性能...
GEC(Generic Embedded Controller)可能是基于ARM架构设计的一种特定嵌入式控制器,用于处理视频监控系统的硬件层面,如视频编码、解码、图像处理等。 3. Linux:这是一个开源的操作系统,因其稳定性和可定制性在...
在机器视觉领域,Ali等人利用色彩跟踪算法检测齿轮轮廓,Mehran等人开发模糊模型用于汽车零部件在线检测,Jung等人通过机器视觉校正镜头和透视畸变,精确测量O形密封圈尺寸。吴庆华提出了基于高度颜色映射的三维表面...
标题中的"基于SpringBoot的开源数据库表结构导出word文档工具"揭示了这个压缩包包含了一个使用SpringBoot框架开发的工具,该工具主要用于将数据库的表结构导出为Word文档。SpringBoot是Java生态系统中一个流行的...
【描述】"基于C语言的学生成绩管理系统"意味着开发人员使用了C语言这一基础且强大的编程语言来实现这个系统。C语言以其高效、灵活和对底层硬件控制的能力而闻名,是开发系统级软件的理想选择。在这个项目中,开发者...
首先,GPS(全球定位系统)是一种基于卫星导航的全球定位技术,它允许设备接收信号并计算其精确位置。在移动应用中,GPS功能通常用于获取用户的实时地理位置,以便提供导航服务。 在本项目中,道路和交通拥堵图被...
Java Petstore是一个经典的示例应用,它展示了如何使用Java Enterprise Edition (Java EE 7) 来构建一个完整的、基于Web的电子商务系统。这个项目旨在帮助开发者理解和学习Java EE 7的各项技术,包括但不限于Servlet...
C++还增加了模板、异常处理、STL(Standard Template Library)等高级特性,广泛应用于游戏开发、大型系统软件和高性能计算等领域。 3. C#:C#是由微软公司推出的面向对象的编程语言,主要应用于.NET框架。它吸取了...
51单片机是Intel公司开发的8051系列的一种,它集成了一颗8位微处理器、内存、定时器/计数器、I/O端口等核心部件。在设计电子时钟时,我们通常会利用其内置的定时器来实现时间的精确计数。 C语言是51单片机编程的...
本篇文章基于Andrew Davison教授在2015年12月18日于伦敦帝国理工学院所做的报告《15年的视觉SLAM》为基础,详细梳理了这一技术的关键里程碑和发展趋势。 #### 二、定义与特征 **定义**:Visual SLAM是指利用单个或...
11. **Python开发工具**:常见的Python集成开发环境(IDE)有PyCharm、VSCode、Spyder等,它们提供代码编辑、调试、自动补全等功能,有助于提高开发效率。 12. **版本管理**:Python有多个版本,如Python 2.x和...
`projStructuredLight` 是一个基于C++的项目,由Lee Min-hyuk和Jung Jun-young在2014年第一学期于仁荷大学的信息与通信专业作为研究生项目开发。这个项目的核心是投射结构光技术,它是一种三维重建方法,广泛应用于...
例如,查看不同的排序算法实现,理解它们的时间复杂度和空间复杂度,有助于在实际开发中选择最优解。同时,学习如何用Java实现各种树和图结构,将帮助你解决复杂的问题,如搜索引擎索引构建、推荐系统等。 此外,...
故障树分析(FTA)是一种系统安全工程方法,用于分析复杂系统中可能导致故障的各种事件之间的关系。在Java中编写故障树分析软件,可以帮助我们系统地理解、识别和预测潜在的故障模式,以及它们如何相互作用导致整个...
"pubmed-graph-tools" 是一个基于Java开发的工具集,主要用于处理和分析PubMed数据库中的文献数据,构建和操作相关的图谱。PubMed是一个由美国国家医学图书馆维护的生物医学文献检索服务系统,包含了海量的医学、...
首先,Android是一种基于Linux内核的开源移动设备操作系统,广泛应用于智能手机和平板电脑。学习Android开发,你需要理解其应用程序框架、UI设计、意图(Intent)机制、服务(Service)、广播接收器(BroadcastReceiver)...