networkr 0.0.1 → 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.yardoc/checksums +10 -0
- data/.yardoc/complete +0 -0
- data/.yardoc/object_types +0 -0
- data/.yardoc/objects/root.dat +0 -0
- data/.yardoc/proxy_types +0 -0
- data/Gemfile.lock +1 -1
- data/README.md +148 -11
- data/doc/BinaryMinHeap.html +870 -0
- data/doc/Networkr.html +1035 -0
- data/doc/Networkr/DiGraph.html +1013 -0
- data/doc/Networkr/Graph.html +1285 -0
- data/doc/Networkr/MultiGraph.html +532 -0
- data/doc/Networkr/Tracker.html +573 -0
- data/doc/NetworkrError.html +211 -0
- data/doc/_index.html +187 -0
- data/doc/class_list.html +51 -0
- data/doc/css/common.css +1 -0
- data/doc/css/full_list.css +58 -0
- data/doc/css/style.css +481 -0
- data/doc/file.README.html +128 -0
- data/doc/file_list.html +56 -0
- data/doc/frames.html +17 -0
- data/doc/index.html +128 -0
- data/doc/js/app.js +243 -0
- data/doc/js/full_list.js +216 -0
- data/doc/js/jquery.js +4 -0
- data/doc/method_list.html +555 -0
- data/doc/top-level-namespace.html +114 -0
- data/lib/networkr/algorithms/dijkstra.rb +8 -6
- data/lib/networkr/algorithms/karger.rb +19 -18
- data/lib/networkr/algorithms/kosaraju.rb +52 -38
- data/lib/networkr/algorithms/prim.rb +17 -14
- data/lib/networkr/graphs/digraph.rb +9 -12
- data/lib/networkr/graphs/graph.rb +11 -20
- data/lib/networkr/graphs/multigraph.rb +25 -30
- data/lib/networkr/version.rb +1 -1
- data/lib/utils/heap.rb +1 -1
- data/networkr.gemspec +7 -2
- metadata +37 -5
@@ -0,0 +1,211 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta charset="utf-8">
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6
|
+
<title>
|
7
|
+
Exception: NetworkrError
|
8
|
+
|
9
|
+
— Documentation by YARD 0.9.5
|
10
|
+
|
11
|
+
</title>
|
12
|
+
|
13
|
+
<link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
|
14
|
+
|
15
|
+
<link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
|
16
|
+
|
17
|
+
<script type="text/javascript" charset="utf-8">
|
18
|
+
pathId = "NetworkrError";
|
19
|
+
relpath = '';
|
20
|
+
</script>
|
21
|
+
|
22
|
+
|
23
|
+
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
|
24
|
+
|
25
|
+
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
|
26
|
+
|
27
|
+
|
28
|
+
</head>
|
29
|
+
<body>
|
30
|
+
<div class="nav_wrap">
|
31
|
+
<iframe id="nav" src="class_list.html"></iframe>
|
32
|
+
<div id="resizer"></div>
|
33
|
+
</div>
|
34
|
+
|
35
|
+
<div id="main" tabindex="-1">
|
36
|
+
<div id="header">
|
37
|
+
<div id="menu">
|
38
|
+
|
39
|
+
<a href="_index.html">Index (N)</a> »
|
40
|
+
|
41
|
+
|
42
|
+
<span class="title">NetworkrError</span>
|
43
|
+
|
44
|
+
</div>
|
45
|
+
|
46
|
+
<div id="search">
|
47
|
+
|
48
|
+
<a class="full_list_link" id="class_list_link"
|
49
|
+
href="class_list.html">
|
50
|
+
|
51
|
+
<svg width="24" height="24">
|
52
|
+
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
|
53
|
+
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
|
54
|
+
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
|
55
|
+
</svg>
|
56
|
+
</a>
|
57
|
+
|
58
|
+
</div>
|
59
|
+
<div class="clear"></div>
|
60
|
+
</div>
|
61
|
+
|
62
|
+
<iframe id="search_frame" src="class_list.html"></iframe>
|
63
|
+
|
64
|
+
<div id="content"><h1>Exception: NetworkrError
|
65
|
+
|
66
|
+
|
67
|
+
|
68
|
+
</h1>
|
69
|
+
<div class="box_info">
|
70
|
+
|
71
|
+
<dl>
|
72
|
+
<dt>Inherits:</dt>
|
73
|
+
<dd>
|
74
|
+
<span class="inheritName">RuntimeError</span>
|
75
|
+
|
76
|
+
<ul class="fullTree">
|
77
|
+
<li>Object</li>
|
78
|
+
|
79
|
+
<li class="next">RuntimeError</li>
|
80
|
+
|
81
|
+
<li class="next">NetworkrError</li>
|
82
|
+
|
83
|
+
</ul>
|
84
|
+
<a href="#" class="inheritanceTree">show all</a>
|
85
|
+
|
86
|
+
</dd>
|
87
|
+
</dl>
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
|
98
|
+
|
99
|
+
<dl>
|
100
|
+
<dt>Defined in:</dt>
|
101
|
+
<dd>lib/networkr/graphs/graph.rb</dd>
|
102
|
+
</dl>
|
103
|
+
|
104
|
+
</div>
|
105
|
+
|
106
|
+
<h2>Overview</h2><div class="docstring">
|
107
|
+
<div class="discussion">
|
108
|
+
|
109
|
+
<p>Class for undirected graphs.</p>
|
110
|
+
|
111
|
+
<p>A Graph stores nodes and edges with optional attributes.</p>
|
112
|
+
|
113
|
+
<p>Graphs hold undirected edges. Self loops are allowed but parallel edges
|
114
|
+
are not.</p>
|
115
|
+
|
116
|
+
<p>Nodes can be arbitrary hashable Ruby objects with optional attributes.</p>
|
117
|
+
|
118
|
+
<p>Edges are represented as links between nodes with option attributes.</p>
|
119
|
+
|
120
|
+
<p>Parameters</p>
|
121
|
+
<hr>
|
122
|
+
|
123
|
+
<p>options: attributes to add to graph as key/value pairs, optional (default
|
124
|
+
is {})</p>
|
125
|
+
|
126
|
+
<p>See Also</p>
|
127
|
+
<hr>
|
128
|
+
|
129
|
+
<p>DiGraph</p>
|
130
|
+
|
131
|
+
<p>Examples</p>
|
132
|
+
<hr>
|
133
|
+
|
134
|
+
<p>Create an empty graph with no nodes and edges.</p>
|
135
|
+
|
136
|
+
<p>>>> g = Graph()</p>
|
137
|
+
|
138
|
+
<p>g can be grown in several ways</p>
|
139
|
+
|
140
|
+
<p>*<strong>Nodes:</strong>*</p>
|
141
|
+
|
142
|
+
<p>Add one node at a time:</p>
|
143
|
+
|
144
|
+
<p>>>> g.add_node(1)</p>
|
145
|
+
|
146
|
+
<p>*<strong>Edges:</strong>*</p>
|
147
|
+
|
148
|
+
<p>Add one edge at a time:</p>
|
149
|
+
|
150
|
+
<p>>>> g.add_edge(1, 2)</p>
|
151
|
+
|
152
|
+
<p>If some edges connect nodes not yet in the graph, the nodes are added
|
153
|
+
automatically. There are no erros when adding nodes or edges that already
|
154
|
+
exist.</p>
|
155
|
+
|
156
|
+
<p>*<strong>Attributes:</strong>*</p>
|
157
|
+
|
158
|
+
<p>Each graph, node, and edge can hold key/value attribute pairs in an
|
159
|
+
associated attribute hash. By default these are empty, but can be added or
|
160
|
+
changed using add_node, add_node, or direct manipulation of the attribute
|
161
|
+
hashes named graph, nodes, and adj.</p>
|
162
|
+
|
163
|
+
<p>>>> g = Graph(name: “users”) >>> g.graph { name: “users”
|
164
|
+
}</p>
|
165
|
+
|
166
|
+
<p>Add/update node attributes using add_node or g.nodes:</p>
|
167
|
+
|
168
|
+
<p>>>> g.add_node(1, username: “janedoe”) >>> g.add_node(3,
|
169
|
+
username: “johndoe”) >>> <a href="1">g.nodes</a> { username:
|
170
|
+
“janedoe” } >>> <a href="1">g.nodes</a>[:score] = 10 >>>
|
171
|
+
<a href="1">g.nodes</a>.delete(:score) # remove attribute >>>
|
172
|
+
g.nodes { 1: { username: “janedoe” }, 3: { username: “johndoe” } }</p>
|
173
|
+
|
174
|
+
<p>Add/update edge attributes using add_edge or g.adj:</p>
|
175
|
+
|
176
|
+
<p>>>> g.add_edge(1, 2, weight: 10) >>> <a
|
177
|
+
href="1">g.adj</a>[<a href=":weight">2]</a> = 4 >>> <a
|
178
|
+
href="1">g.adj</a>[2] { weight: 4 }</p>
|
179
|
+
|
180
|
+
<p>*<strong>Representation:</strong>* :TODO g.to_s</p>
|
181
|
+
|
182
|
+
<p>1-2 { weight: 4 } 2-6 { weight: 10 } 4-6 { weight: 8 } 3-5 { weight: 5 }
|
183
|
+
5-6 { weight: 1 }</p>
|
184
|
+
|
185
|
+
|
186
|
+
</div>
|
187
|
+
</div>
|
188
|
+
<div class="tags">
|
189
|
+
|
190
|
+
|
191
|
+
</div>
|
192
|
+
|
193
|
+
|
194
|
+
|
195
|
+
|
196
|
+
|
197
|
+
|
198
|
+
|
199
|
+
|
200
|
+
|
201
|
+
</div>
|
202
|
+
|
203
|
+
<div id="footer">
|
204
|
+
Generated on Sun Jul 24 17:23:15 2016 by
|
205
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
206
|
+
0.9.5 (ruby-2.1.2).
|
207
|
+
</div>
|
208
|
+
|
209
|
+
</div>
|
210
|
+
</body>
|
211
|
+
</html>
|
data/doc/_index.html
ADDED
@@ -0,0 +1,187 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta charset="utf-8">
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
6
|
+
<title>
|
7
|
+
Documentation by YARD 0.9.5
|
8
|
+
|
9
|
+
</title>
|
10
|
+
|
11
|
+
<link rel="stylesheet" href="css/style.css" type="text/css" charset="utf-8" />
|
12
|
+
|
13
|
+
<link rel="stylesheet" href="css/common.css" type="text/css" charset="utf-8" />
|
14
|
+
|
15
|
+
<script type="text/javascript" charset="utf-8">
|
16
|
+
pathId = null;
|
17
|
+
relpath = '';
|
18
|
+
</script>
|
19
|
+
|
20
|
+
|
21
|
+
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
|
22
|
+
|
23
|
+
<script type="text/javascript" charset="utf-8" src="js/app.js"></script>
|
24
|
+
|
25
|
+
|
26
|
+
</head>
|
27
|
+
<body>
|
28
|
+
<div class="nav_wrap">
|
29
|
+
<iframe id="nav" src="class_list.html"></iframe>
|
30
|
+
<div id="resizer"></div>
|
31
|
+
</div>
|
32
|
+
|
33
|
+
<div id="main" tabindex="-1">
|
34
|
+
<div id="header">
|
35
|
+
<div id="menu">
|
36
|
+
|
37
|
+
</div>
|
38
|
+
|
39
|
+
<div id="search">
|
40
|
+
|
41
|
+
<a class="full_list_link" id="class_list_link"
|
42
|
+
href="class_list.html">
|
43
|
+
|
44
|
+
<svg width="24" height="24">
|
45
|
+
<rect x="0" y="4" width="24" height="4" rx="1" ry="1"></rect>
|
46
|
+
<rect x="0" y="12" width="24" height="4" rx="1" ry="1"></rect>
|
47
|
+
<rect x="0" y="20" width="24" height="4" rx="1" ry="1"></rect>
|
48
|
+
</svg>
|
49
|
+
</a>
|
50
|
+
|
51
|
+
</div>
|
52
|
+
<div class="clear"></div>
|
53
|
+
</div>
|
54
|
+
|
55
|
+
<iframe id="search_frame" src="class_list.html"></iframe>
|
56
|
+
|
57
|
+
<div id="content"><h1 class="noborder title">Documentation by YARD 0.9.5</h1>
|
58
|
+
<div id="listing">
|
59
|
+
<h1 class="alphaindex">Alphabetic Index</h1>
|
60
|
+
|
61
|
+
<h2>File Listing</h2>
|
62
|
+
<ul id="files" class="index_inline_list">
|
63
|
+
|
64
|
+
|
65
|
+
<li class="r1"><a href="index.html" title="README">README</a></li>
|
66
|
+
|
67
|
+
|
68
|
+
</ul>
|
69
|
+
|
70
|
+
<div class="clear"></div>
|
71
|
+
<h2>Namespace Listing A-Z</h2>
|
72
|
+
|
73
|
+
|
74
|
+
|
75
|
+
|
76
|
+
<table>
|
77
|
+
<tr>
|
78
|
+
<td valign='top' width="33%">
|
79
|
+
|
80
|
+
|
81
|
+
<ul id="alpha_B" class="alpha">
|
82
|
+
<li class="letter">B</li>
|
83
|
+
<ul>
|
84
|
+
|
85
|
+
<li>
|
86
|
+
<span class='object_link'><a href="BinaryMinHeap.html" title="BinaryMinHeap (class)">BinaryMinHeap</a></span>
|
87
|
+
|
88
|
+
</li>
|
89
|
+
|
90
|
+
</ul>
|
91
|
+
</ul>
|
92
|
+
|
93
|
+
|
94
|
+
<ul id="alpha_D" class="alpha">
|
95
|
+
<li class="letter">D</li>
|
96
|
+
<ul>
|
97
|
+
|
98
|
+
<li>
|
99
|
+
<span class='object_link'><a href="Networkr/DiGraph.html" title="Networkr::DiGraph (class)">DiGraph</a></span>
|
100
|
+
|
101
|
+
<small>(Networkr)</small>
|
102
|
+
|
103
|
+
</li>
|
104
|
+
|
105
|
+
</ul>
|
106
|
+
</ul>
|
107
|
+
|
108
|
+
|
109
|
+
<ul id="alpha_G" class="alpha">
|
110
|
+
<li class="letter">G</li>
|
111
|
+
<ul>
|
112
|
+
|
113
|
+
<li>
|
114
|
+
<span class='object_link'><a href="Networkr/Graph.html" title="Networkr::Graph (class)">Graph</a></span>
|
115
|
+
|
116
|
+
<small>(Networkr)</small>
|
117
|
+
|
118
|
+
</li>
|
119
|
+
|
120
|
+
</ul>
|
121
|
+
</ul>
|
122
|
+
|
123
|
+
|
124
|
+
<ul id="alpha_M" class="alpha">
|
125
|
+
<li class="letter">M</li>
|
126
|
+
<ul>
|
127
|
+
|
128
|
+
<li>
|
129
|
+
<span class='object_link'><a href="Networkr/MultiGraph.html" title="Networkr::MultiGraph (class)">MultiGraph</a></span>
|
130
|
+
|
131
|
+
<small>(Networkr)</small>
|
132
|
+
|
133
|
+
</li>
|
134
|
+
|
135
|
+
</ul>
|
136
|
+
</ul>
|
137
|
+
|
138
|
+
|
139
|
+
<ul id="alpha_N" class="alpha">
|
140
|
+
<li class="letter">N</li>
|
141
|
+
<ul>
|
142
|
+
|
143
|
+
<li>
|
144
|
+
<span class='object_link'><a href="Networkr.html" title="Networkr (module)">Networkr</a></span>
|
145
|
+
|
146
|
+
</li>
|
147
|
+
|
148
|
+
<li>
|
149
|
+
<span class='object_link'><a href="NetworkrError.html" title="NetworkrError (class)">NetworkrError</a></span>
|
150
|
+
|
151
|
+
</li>
|
152
|
+
|
153
|
+
</ul>
|
154
|
+
</ul>
|
155
|
+
|
156
|
+
|
157
|
+
<ul id="alpha_T" class="alpha">
|
158
|
+
<li class="letter">T</li>
|
159
|
+
<ul>
|
160
|
+
|
161
|
+
<li>
|
162
|
+
<span class='object_link'><a href="Networkr/Tracker.html" title="Networkr::Tracker (class)">Tracker</a></span>
|
163
|
+
|
164
|
+
<small>(Networkr)</small>
|
165
|
+
|
166
|
+
</li>
|
167
|
+
|
168
|
+
</ul>
|
169
|
+
</ul>
|
170
|
+
|
171
|
+
</td>
|
172
|
+
</tr>
|
173
|
+
</table>
|
174
|
+
|
175
|
+
</div>
|
176
|
+
|
177
|
+
</div>
|
178
|
+
|
179
|
+
<div id="footer">
|
180
|
+
Generated on Sun Jul 24 17:23:13 2016 by
|
181
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
182
|
+
0.9.5 (ruby-2.1.2).
|
183
|
+
</div>
|
184
|
+
|
185
|
+
</div>
|
186
|
+
</body>
|
187
|
+
</html>
|
data/doc/class_list.html
ADDED
@@ -0,0 +1,51 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
5
|
+
<meta charset="utf-8" />
|
6
|
+
|
7
|
+
<link rel="stylesheet" href="css/full_list.css" type="text/css" media="screen" charset="utf-8" />
|
8
|
+
|
9
|
+
<link rel="stylesheet" href="css/common.css" type="text/css" media="screen" charset="utf-8" />
|
10
|
+
|
11
|
+
|
12
|
+
|
13
|
+
<script type="text/javascript" charset="utf-8" src="js/jquery.js"></script>
|
14
|
+
|
15
|
+
<script type="text/javascript" charset="utf-8" src="js/full_list.js"></script>
|
16
|
+
|
17
|
+
|
18
|
+
<title>Class List</title>
|
19
|
+
<base id="base_target" target="_parent" />
|
20
|
+
</head>
|
21
|
+
<body>
|
22
|
+
<div id="content">
|
23
|
+
<div class="fixed_header">
|
24
|
+
<h1 id="full_list_header">Class List</h1>
|
25
|
+
<div id="full_list_nav">
|
26
|
+
|
27
|
+
<span><a target="_self" href="class_list.html">
|
28
|
+
Classes
|
29
|
+
</a></span>
|
30
|
+
|
31
|
+
<span><a target="_self" href="method_list.html">
|
32
|
+
Methods
|
33
|
+
</a></span>
|
34
|
+
|
35
|
+
<span><a target="_self" href="file_list.html">
|
36
|
+
Files
|
37
|
+
</a></span>
|
38
|
+
|
39
|
+
</div>
|
40
|
+
|
41
|
+
<div id="search">Search: <input type="text" /></div>
|
42
|
+
</div>
|
43
|
+
|
44
|
+
<ul id="full_list" class="class">
|
45
|
+
<li id="object_" class="odd"><div class="item" style="padding-left:30px"><span class='object_link'><a href="top-level-namespace.html" title="Top Level Namespace (root)">Top Level Namespace</a></span></div></li>
|
46
|
+
<li id='object_BinaryMinHeap' class='even'><div class='item' style='padding-left:30px'><span class='object_link'><a href="BinaryMinHeap.html" title="BinaryMinHeap (class)">BinaryMinHeap</a></span> < Object<small class='search_info'>Top Level Namespace</small></div></li><li id='object_Networkr' class='odd'><div class='item' style='padding-left:30px'><a class='toggle'></a> <span class='object_link'><a href="Networkr.html" title="Networkr (module)">Networkr</a></span><small class='search_info'>Top Level Namespace</small></div><ul><li id='object_Networkr::DiGraph' class='collapsed even'><div class='item' style='padding-left:45px'><span class='object_link'><a href="Networkr/DiGraph.html" title="Networkr::DiGraph (class)">DiGraph</a></span> < Graph<small class='search_info'>Networkr</small></div></li><li id='object_Networkr::Graph' class='collapsed odd'><div class='item' style='padding-left:45px'><span class='object_link'><a href="Networkr/Graph.html" title="Networkr::Graph (class)">Graph</a></span> < Object<small class='search_info'>Networkr</small></div></li><li id='object_Networkr::MultiGraph' class='collapsed even'><div class='item' style='padding-left:45px'><span class='object_link'><a href="Networkr/MultiGraph.html" title="Networkr::MultiGraph (class)">MultiGraph</a></span> < Graph<small class='search_info'>Networkr</small></div></li><li id='object_Networkr::Tracker' class='collapsed odd'><div class='item' style='padding-left:45px'><span class='object_link'><a href="Networkr/Tracker.html" title="Networkr::Tracker (class)">Tracker</a></span> < Object<small class='search_info'>Networkr</small></div></li></ul></li><li id='object_NetworkrError' class='even'><div class='item' style='padding-left:30px'><span class='object_link'><a href="NetworkrError.html" title="NetworkrError (class)">NetworkrError</a></span> < RuntimeError<small class='search_info'>Top Level Namespace</small></div></li>
|
47
|
+
|
48
|
+
</ul>
|
49
|
+
</div>
|
50
|
+
</body>
|
51
|
+
</html>
|