JavaScript图的基本构建
来源:互联网 发布:js责任链模式 编辑:程序博客网 时间:2024/06/05 20:23
引言
利用图,可以对生活中很多系统进行建模。比如交通流量,顶点表示道路交叉点,边表示街道,边的权值可以表示限速信息等。通过一定算法可得到最优路线巴拉巴拉······除此外还有很多很多系统可以通过图来建模,只要你敢想,just do it.
代码不会骗人,结果就是证据。
对以下图进行构建,目前暂不考虑权。要发展,首先得有图啊啊啊啊················
构建
var g= new Graph(5); g.addEdge(0,1); g.addEdge(0,2); g.addEdge(0,4); g.addEdge(1,4); g.addEdge(1,3); g.addEdge(3,4); g.showGraph(); /** * 构建图类 * parameters:vertices 顶点数 * edges 边数 * adj 存储相邻顶点的数组(邻接表数组,一个二维数组,如adj[1]表示存储顶点1的邻接表) * function:addEdge 添加相邻顶点 **/ function Graph(v) { this.vertices = v; this.edges = 0; this.adj = []; for (var i = 0; i < this.vertices; i++) { this.adj[i] = []; this.adj[i].push(''); } this.addEdge = addEdge; this.showGraph = showGraph; } /** * 添加相邻顶点v,w * 在adj[v](v顶点的邻接表里添加w) * 相应的在adj[w](w顶点的邻接表里添加v) * 两个顶点建立了连接关系,则全图将增加一条边 **/ function addEdge(v, w) { this.adj[v].push(w); this.adj[w].push(v); this.edges++; } /** *显示图 **/ function showGraph(){ var str=[]; for(var i = 0; i < this.vertices; i++){ str.push('\n'+i+'->'); for(var j = 0; j < this.vertices; j++){ if(this.adj[i][j]!=undefined){ str.push(this.adj[i][j]); } } } console.log(str.join()); }
0 0
- JavaScript图的基本构建
- 构建基本的脚本
- javascript---类的构建
- 构建最最基本的laf
- 构建数据仓库的基本步骤
- 【JavaScript】Grunt,JavaScript世界构建的工具
- JavaScript的基本语法
- javascript的基本使用
- JavaScript的基本介绍
- JavaScript的基本语法
- JavaScript 的基本介绍
- javaScript的基本语法
- Javascript的基本介绍
- JavaScript的基本数据类型
- Javascript的基本语法
- JavaScript的基本数据类型
- JavaScript的基本语法
- JavaScript的基本规范
- 牛腩系统错误解决
- 父子控制器1
- error LNK2026: module unsafe for SAFESEH image.
- 用Ambari安装hdp2.4错误汇总
- static修饰类,变量和方法,代码块
- JavaScript图的基本构建
- C# Linq 集合作为查询条件获取数据
- 2013山东省第四届ACM省赛 Rescue The Princess
- 引用计数
- C#拖拽文件并显示
- 关于Android开发中启动应用但桌面不显示图标的问题
- 如何将一个字符串的文件直接转换成NSURL
- 从数据库读取前10条数据
- django学习日志(参考了网上各种资料和自己总结,可能存在一些错误,请指正!)