P06 0.1.0
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 +7 -0
- data/.coveralls.yml +1 -0
- data/.gitignore +12 -0
- data/.rspec +2 -0
- data/.travis.yml +5 -0
- data/CODE_OF_CONDUCT.md +74 -0
- data/Gemfile +6 -0
- data/Guardfile +82 -0
- data/LICENSE.txt +21 -0
- data/P06.gemspec +42 -0
- data/README.md +5 -0
- data/Rakefile +6 -0
- data/bin/console +14 -0
- data/bin/setup +8 -0
- data/docs/Alimento.html +871 -0
- data/docs/Alimento_concreto.html +459 -0
- data/docs/Array.html +316 -0
- data/docs/List.html +1135 -0
- data/docs/Nodo.html +410 -0
- data/docs/P06.html +117 -0
- data/docs/_index.html +156 -0
- data/docs/class_list.html +51 -0
- data/docs/css/common.css +1 -0
- data/docs/css/full_list.css +58 -0
- data/docs/css/style.css +492 -0
- data/docs/file.README.html +79 -0
- data/docs/file_list.html +56 -0
- data/docs/frames.html +17 -0
- data/docs/index.html +79 -0
- data/docs/js/app.js +248 -0
- data/docs/js/full_list.js +216 -0
- data/docs/js/jquery.js +4 -0
- data/docs/method_list.html +299 -0
- data/docs/top-level-namespace.html +112 -0
- data/lib/P06.rb +23 -0
- data/lib/P06/DSL.rb +168 -0
- data/lib/P06/alimento.rb +53 -0
- data/lib/P06/alimento_concreto.rb +64 -0
- data/lib/P06/list.rb +162 -0
- data/lib/P06/version.rb +3 -0
- metadata +183 -0
data/docs/Array.html
ADDED
@@ -0,0 +1,316 @@
|
|
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
|
+
Class: Array
|
8
|
+
|
9
|
+
— Documentation by YARD 0.9.9
|
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 = "Array";
|
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?1"></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 (A)</a> »
|
40
|
+
|
41
|
+
|
42
|
+
<span class="title">Array</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
|
+
<div id="content"><h1>Class: Array
|
63
|
+
|
64
|
+
|
65
|
+
|
66
|
+
</h1>
|
67
|
+
<div class="box_info">
|
68
|
+
|
69
|
+
<dl>
|
70
|
+
<dt>Inherits:</dt>
|
71
|
+
<dd>
|
72
|
+
<span class="inheritName">Object</span>
|
73
|
+
|
74
|
+
<ul class="fullTree">
|
75
|
+
<li>Object</li>
|
76
|
+
|
77
|
+
<li class="next">Array</li>
|
78
|
+
|
79
|
+
</ul>
|
80
|
+
<a href="#" class="inheritanceTree">show all</a>
|
81
|
+
|
82
|
+
</dd>
|
83
|
+
</dl>
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
<dl>
|
96
|
+
<dt>Defined in:</dt>
|
97
|
+
<dd>lib/P06/alimento_concreto.rb</dd>
|
98
|
+
</dl>
|
99
|
+
|
100
|
+
</div>
|
101
|
+
|
102
|
+
<h2>Overview</h2><div class="docstring">
|
103
|
+
<div class="discussion">
|
104
|
+
|
105
|
+
<p>Aqui abro la clase array y creo los metodos de ordenacion for y each. El
|
106
|
+
sort ya lo tiene la clase</p>
|
107
|
+
|
108
|
+
|
109
|
+
</div>
|
110
|
+
</div>
|
111
|
+
<div class="tags">
|
112
|
+
|
113
|
+
|
114
|
+
</div>
|
115
|
+
|
116
|
+
|
117
|
+
|
118
|
+
|
119
|
+
|
120
|
+
|
121
|
+
|
122
|
+
<h2>
|
123
|
+
Instance Method Summary
|
124
|
+
<small><a href="#" class="summary_toggle">collapse</a></small>
|
125
|
+
</h2>
|
126
|
+
|
127
|
+
<ul class="summary">
|
128
|
+
|
129
|
+
<li class="public ">
|
130
|
+
<span class="summary_signature">
|
131
|
+
|
132
|
+
<a href="#ordenar_each-instance_method" title="#ordenar_each (instance method)">#<strong>ordenar_each</strong> ⇒ Object </a>
|
133
|
+
|
134
|
+
|
135
|
+
|
136
|
+
</span>
|
137
|
+
|
138
|
+
|
139
|
+
|
140
|
+
|
141
|
+
|
142
|
+
|
143
|
+
|
144
|
+
|
145
|
+
|
146
|
+
<span class="summary_desc"><div class='inline'>
|
147
|
+
<p>Este es el metodo de ordenacion each.</p>
|
148
|
+
</div></span>
|
149
|
+
|
150
|
+
</li>
|
151
|
+
|
152
|
+
|
153
|
+
<li class="public ">
|
154
|
+
<span class="summary_signature">
|
155
|
+
|
156
|
+
<a href="#ordenar_for-instance_method" title="#ordenar_for (instance method)">#<strong>ordenar_for</strong> ⇒ Object </a>
|
157
|
+
|
158
|
+
|
159
|
+
|
160
|
+
</span>
|
161
|
+
|
162
|
+
|
163
|
+
|
164
|
+
|
165
|
+
|
166
|
+
|
167
|
+
|
168
|
+
|
169
|
+
|
170
|
+
<span class="summary_desc"><div class='inline'>
|
171
|
+
<p>Este es el metodo de ordenacio for.</p>
|
172
|
+
</div></span>
|
173
|
+
|
174
|
+
</li>
|
175
|
+
|
176
|
+
|
177
|
+
</ul>
|
178
|
+
|
179
|
+
|
180
|
+
|
181
|
+
|
182
|
+
<div id="instance_method_details" class="method_details_list">
|
183
|
+
<h2>Instance Method Details</h2>
|
184
|
+
|
185
|
+
|
186
|
+
<div class="method_details first">
|
187
|
+
<h3 class="signature first" id="ordenar_each-instance_method">
|
188
|
+
|
189
|
+
#<strong>ordenar_each</strong> ⇒ <tt>Object</tt>
|
190
|
+
|
191
|
+
|
192
|
+
|
193
|
+
|
194
|
+
|
195
|
+
</h3><div class="docstring">
|
196
|
+
<div class="discussion">
|
197
|
+
|
198
|
+
<p>Este es el metodo de ordenacion each.</p>
|
199
|
+
|
200
|
+
|
201
|
+
</div>
|
202
|
+
</div>
|
203
|
+
<div class="tags">
|
204
|
+
|
205
|
+
|
206
|
+
</div><table class="source_code">
|
207
|
+
<tr>
|
208
|
+
<td>
|
209
|
+
<pre class="lines">
|
210
|
+
|
211
|
+
|
212
|
+
55
|
213
|
+
56
|
214
|
+
57
|
215
|
+
58
|
216
|
+
59
|
217
|
+
60
|
218
|
+
61
|
219
|
+
62
|
220
|
+
63</pre>
|
221
|
+
</td>
|
222
|
+
<td>
|
223
|
+
<pre class="code"><span class="info file"># File 'lib/P06/alimento_concreto.rb', line 55</span>
|
224
|
+
|
225
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_ordenar_each'>ordenar_each</span>
|
226
|
+
|
227
|
+
<span class='ivar'>@ordenado</span><span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
|
228
|
+
<span class='id identifier rubyid_aux_self'>aux_self</span><span class='op'>=</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_clone'>clone</span>
|
229
|
+
|
230
|
+
<span class='lparen'>(</span><span class='int'>0</span><span class='op'>..</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='op'>-</span><span class='int'>1</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span><span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_i'>i</span><span class='op'>|</span> <span class='id identifier rubyid_min'>min</span><span class='op'>=</span><span class='id identifier rubyid_aux_self'>aux_self</span><span class='period'>.</span><span class='id identifier rubyid_min'>min</span><span class='semicolon'>;</span> <span class='ivar'>@ordenado</span> <span class='op'><<</span> <span class='id identifier rubyid_min'>min</span><span class='semicolon'>;</span> <span class='id identifier rubyid_aux_self'>aux_self</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span><span class='lparen'>(</span><span class='id identifier rubyid_min'>min</span><span class='rparen'>)</span><span class='rbrace'>}</span>
|
231
|
+
|
232
|
+
<span class='ivar'>@ordenado</span>
|
233
|
+
<span class='kw'>end</span></pre>
|
234
|
+
</td>
|
235
|
+
</tr>
|
236
|
+
</table>
|
237
|
+
</div>
|
238
|
+
|
239
|
+
<div class="method_details ">
|
240
|
+
<h3 class="signature " id="ordenar_for-instance_method">
|
241
|
+
|
242
|
+
#<strong>ordenar_for</strong> ⇒ <tt>Object</tt>
|
243
|
+
|
244
|
+
|
245
|
+
|
246
|
+
|
247
|
+
|
248
|
+
</h3><div class="docstring">
|
249
|
+
<div class="discussion">
|
250
|
+
|
251
|
+
<p>Este es el metodo de ordenacio for. Utilizo el metodo burbuja.</p>
|
252
|
+
|
253
|
+
|
254
|
+
</div>
|
255
|
+
</div>
|
256
|
+
<div class="tags">
|
257
|
+
|
258
|
+
|
259
|
+
</div><table class="source_code">
|
260
|
+
<tr>
|
261
|
+
<td>
|
262
|
+
<pre class="lines">
|
263
|
+
|
264
|
+
|
265
|
+
38
|
266
|
+
39
|
267
|
+
40
|
268
|
+
41
|
269
|
+
42
|
270
|
+
43
|
271
|
+
44
|
272
|
+
45
|
273
|
+
46
|
274
|
+
47
|
275
|
+
48
|
276
|
+
49
|
277
|
+
50
|
278
|
+
51
|
279
|
+
52</pre>
|
280
|
+
</td>
|
281
|
+
<td>
|
282
|
+
<pre class="code"><span class="info file"># File 'lib/P06/alimento_concreto.rb', line 38</span>
|
283
|
+
|
284
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_ordenar_for'>ordenar_for</span>
|
285
|
+
|
286
|
+
<span class='ivar'>@vector</span><span class='op'>=</span><span class='kw'>self</span>
|
287
|
+
|
288
|
+
<span class='kw'>for</span> <span class='id identifier rubyid_i'>i</span> <span class='kw'>in</span> <span class='lparen'>(</span><span class='int'>0</span><span class='op'>..</span><span class='ivar'>@vector</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='op'>-</span><span class='int'>1</span><span class='rparen'>)</span>
|
289
|
+
<span class='kw'>for</span> <span class='id identifier rubyid_j'>j</span> <span class='kw'>in</span> <span class='lparen'>(</span><span class='int'>0</span><span class='op'>..</span><span class='ivar'>@vector</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='op'>-</span><span class='int'>1</span><span class='rparen'>)</span>
|
290
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_j'>j</span><span class='op'>+</span><span class='int'>1</span> <span class='op'>!=</span> <span class='ivar'>@vector</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span>
|
291
|
+
<span class='kw'>if</span> <span class='ivar'>@vector</span><span class='lbracket'>[</span><span class='id identifier rubyid_j'>j</span><span class='op'>+</span><span class='int'>1</span><span class='rbracket'>]</span> <span class='op'><</span> <span class='ivar'>@vector</span><span class='lbracket'>[</span><span class='id identifier rubyid_j'>j</span><span class='rbracket'>]</span>
|
292
|
+
<span class='ivar'>@vector</span><span class='lbracket'>[</span><span class='id identifier rubyid_j'>j</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='ivar'>@vector</span><span class='lbracket'>[</span><span class='id identifier rubyid_j'>j</span><span class='op'>+</span><span class='int'>1</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@vector</span><span class='lbracket'>[</span><span class='id identifier rubyid_j'>j</span><span class='op'>+</span><span class='int'>1</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='ivar'>@vector</span><span class='lbracket'>[</span><span class='id identifier rubyid_j'>j</span><span class='rbracket'>]</span>
|
293
|
+
<span class='kw'>end</span>
|
294
|
+
<span class='kw'>end</span>
|
295
|
+
<span class='kw'>end</span>
|
296
|
+
<span class='kw'>end</span>
|
297
|
+
<span class='ivar'>@vector</span>
|
298
|
+
<span class='kw'>end</span></pre>
|
299
|
+
</td>
|
300
|
+
</tr>
|
301
|
+
</table>
|
302
|
+
</div>
|
303
|
+
|
304
|
+
</div>
|
305
|
+
|
306
|
+
</div>
|
307
|
+
|
308
|
+
<div id="footer">
|
309
|
+
Generated on Tue Nov 28 18:13:07 2017 by
|
310
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
311
|
+
0.9.9 (ruby-2.3.0).
|
312
|
+
</div>
|
313
|
+
|
314
|
+
</div>
|
315
|
+
</body>
|
316
|
+
</html>
|
data/docs/List.html
ADDED
@@ -0,0 +1,1135 @@
|
|
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
|
+
Class: List
|
8
|
+
|
9
|
+
— Documentation by YARD 0.9.9
|
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 = "List";
|
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?1"></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 (L)</a> »
|
40
|
+
|
41
|
+
|
42
|
+
<span class="title">List</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
|
+
<div id="content"><h1>Class: List
|
63
|
+
|
64
|
+
|
65
|
+
|
66
|
+
</h1>
|
67
|
+
<div class="box_info">
|
68
|
+
|
69
|
+
<dl>
|
70
|
+
<dt>Inherits:</dt>
|
71
|
+
<dd>
|
72
|
+
<span class="inheritName">Object</span>
|
73
|
+
|
74
|
+
<ul class="fullTree">
|
75
|
+
<li>Object</li>
|
76
|
+
|
77
|
+
<li class="next">List</li>
|
78
|
+
|
79
|
+
</ul>
|
80
|
+
<a href="#" class="inheritanceTree">show all</a>
|
81
|
+
|
82
|
+
</dd>
|
83
|
+
</dl>
|
84
|
+
|
85
|
+
|
86
|
+
|
87
|
+
|
88
|
+
|
89
|
+
|
90
|
+
<dl>
|
91
|
+
<dt>Includes:</dt>
|
92
|
+
<dd>Enumerable</dd>
|
93
|
+
</dl>
|
94
|
+
|
95
|
+
|
96
|
+
|
97
|
+
|
98
|
+
|
99
|
+
|
100
|
+
<dl>
|
101
|
+
<dt>Defined in:</dt>
|
102
|
+
<dd>lib/P06/list.rb</dd>
|
103
|
+
</dl>
|
104
|
+
|
105
|
+
</div>
|
106
|
+
|
107
|
+
<h2>Overview</h2><div class="docstring">
|
108
|
+
<div class="discussion">
|
109
|
+
|
110
|
+
<p>Esta clase permite representar una lista doblemente enlazada. Se ha
|
111
|
+
incluido el módulo Enumerable.</p>
|
112
|
+
|
113
|
+
|
114
|
+
</div>
|
115
|
+
</div>
|
116
|
+
<div class="tags">
|
117
|
+
|
118
|
+
|
119
|
+
</div>
|
120
|
+
|
121
|
+
|
122
|
+
|
123
|
+
<h2>Instance Attribute Summary <small><a href="#" class="summary_toggle">collapse</a></small></h2>
|
124
|
+
<ul class="summary">
|
125
|
+
|
126
|
+
<li class="public ">
|
127
|
+
<span class="summary_signature">
|
128
|
+
|
129
|
+
<a href="#head-instance_method" title="#head (instance method)">#<strong>head</strong> ⇒ Object </a>
|
130
|
+
|
131
|
+
|
132
|
+
|
133
|
+
</span>
|
134
|
+
|
135
|
+
|
136
|
+
|
137
|
+
|
138
|
+
|
139
|
+
|
140
|
+
|
141
|
+
|
142
|
+
|
143
|
+
|
144
|
+
|
145
|
+
|
146
|
+
<span class="summary_desc"><div class='inline'>
|
147
|
+
<p>Returns the value of attribute head.</p>
|
148
|
+
</div></span>
|
149
|
+
|
150
|
+
</li>
|
151
|
+
|
152
|
+
|
153
|
+
<li class="public ">
|
154
|
+
<span class="summary_signature">
|
155
|
+
|
156
|
+
<a href="#tail-instance_method" title="#tail (instance method)">#<strong>tail</strong> ⇒ Object </a>
|
157
|
+
|
158
|
+
|
159
|
+
|
160
|
+
</span>
|
161
|
+
|
162
|
+
|
163
|
+
|
164
|
+
|
165
|
+
|
166
|
+
|
167
|
+
|
168
|
+
|
169
|
+
|
170
|
+
|
171
|
+
|
172
|
+
|
173
|
+
<span class="summary_desc"><div class='inline'>
|
174
|
+
<p>Returns the value of attribute tail.</p>
|
175
|
+
</div></span>
|
176
|
+
|
177
|
+
</li>
|
178
|
+
|
179
|
+
|
180
|
+
</ul>
|
181
|
+
|
182
|
+
|
183
|
+
|
184
|
+
|
185
|
+
|
186
|
+
<h2>
|
187
|
+
Instance Method Summary
|
188
|
+
<small><a href="#" class="summary_toggle">collapse</a></small>
|
189
|
+
</h2>
|
190
|
+
|
191
|
+
<ul class="summary">
|
192
|
+
|
193
|
+
<li class="public ">
|
194
|
+
<span class="summary_signature">
|
195
|
+
|
196
|
+
<a href="#each-instance_method" title="#each (instance method)">#<strong>each</strong> ⇒ Object </a>
|
197
|
+
|
198
|
+
|
199
|
+
|
200
|
+
</span>
|
201
|
+
|
202
|
+
|
203
|
+
|
204
|
+
|
205
|
+
|
206
|
+
|
207
|
+
|
208
|
+
|
209
|
+
|
210
|
+
<span class="summary_desc"><div class='inline'>
|
211
|
+
<p>Este metodo es el each que van a utilizar los metodos del módulo
|
212
|
+
Enumerable, pero esta acomodado a nuestra clase.</p>
|
213
|
+
</div></span>
|
214
|
+
|
215
|
+
</li>
|
216
|
+
|
217
|
+
|
218
|
+
<li class="public ">
|
219
|
+
<span class="summary_signature">
|
220
|
+
|
221
|
+
<a href="#get_next-instance_method" title="#get_next (instance method)">#<strong>get_next</strong>(value) ⇒ Object </a>
|
222
|
+
|
223
|
+
|
224
|
+
|
225
|
+
</span>
|
226
|
+
|
227
|
+
|
228
|
+
|
229
|
+
|
230
|
+
|
231
|
+
|
232
|
+
|
233
|
+
|
234
|
+
|
235
|
+
<span class="summary_desc"><div class='inline'>
|
236
|
+
<p>Nos devuelve el nodo siguiente de un nodo que le pasamos por parámetros.</p>
|
237
|
+
</div></span>
|
238
|
+
|
239
|
+
</li>
|
240
|
+
|
241
|
+
|
242
|
+
<li class="public ">
|
243
|
+
<span class="summary_signature">
|
244
|
+
|
245
|
+
<a href="#get_prev-instance_method" title="#get_prev (instance method)">#<strong>get_prev</strong>(value) ⇒ Object </a>
|
246
|
+
|
247
|
+
|
248
|
+
|
249
|
+
</span>
|
250
|
+
|
251
|
+
|
252
|
+
|
253
|
+
|
254
|
+
|
255
|
+
|
256
|
+
|
257
|
+
|
258
|
+
|
259
|
+
<span class="summary_desc"><div class='inline'>
|
260
|
+
<p>Devuelve el nodo previo al nodo que pasamos por parámetros.</p>
|
261
|
+
</div></span>
|
262
|
+
|
263
|
+
</li>
|
264
|
+
|
265
|
+
|
266
|
+
<li class="public ">
|
267
|
+
<span class="summary_signature">
|
268
|
+
|
269
|
+
<a href="#get_value-instance_method" title="#get_value (instance method)">#<strong>get_value</strong>(value) ⇒ Object </a>
|
270
|
+
|
271
|
+
|
272
|
+
|
273
|
+
</span>
|
274
|
+
|
275
|
+
|
276
|
+
|
277
|
+
|
278
|
+
|
279
|
+
|
280
|
+
|
281
|
+
|
282
|
+
|
283
|
+
<span class="summary_desc"><div class='inline'>
|
284
|
+
<p>Devuelve el valor de un nodo que le pasamos por parametros.</p>
|
285
|
+
</div></span>
|
286
|
+
|
287
|
+
</li>
|
288
|
+
|
289
|
+
|
290
|
+
<li class="public ">
|
291
|
+
<span class="summary_signature">
|
292
|
+
|
293
|
+
<a href="#initialize-instance_method" title="#initialize (instance method)">#<strong>initialize</strong> ⇒ List </a>
|
294
|
+
|
295
|
+
|
296
|
+
|
297
|
+
</span>
|
298
|
+
|
299
|
+
|
300
|
+
<span class="note title constructor">constructor</span>
|
301
|
+
|
302
|
+
|
303
|
+
|
304
|
+
|
305
|
+
|
306
|
+
|
307
|
+
|
308
|
+
|
309
|
+
<span class="summary_desc"><div class='inline'>
|
310
|
+
<p>Se asignan el valor del head y el tail de la lista, que inicialmente es
|
311
|
+
nil.</p>
|
312
|
+
</div></span>
|
313
|
+
|
314
|
+
</li>
|
315
|
+
|
316
|
+
|
317
|
+
<li class="public ">
|
318
|
+
<span class="summary_signature">
|
319
|
+
|
320
|
+
<a href="#pop_head-instance_method" title="#pop_head (instance method)">#<strong>pop_head</strong> ⇒ Object </a>
|
321
|
+
|
322
|
+
|
323
|
+
|
324
|
+
</span>
|
325
|
+
|
326
|
+
|
327
|
+
|
328
|
+
|
329
|
+
|
330
|
+
|
331
|
+
|
332
|
+
|
333
|
+
|
334
|
+
<span class="summary_desc"><div class='inline'>
|
335
|
+
<p>Este metodo nos permite extraer el head de la lista.</p>
|
336
|
+
</div></span>
|
337
|
+
|
338
|
+
</li>
|
339
|
+
|
340
|
+
|
341
|
+
<li class="public ">
|
342
|
+
<span class="summary_signature">
|
343
|
+
|
344
|
+
<a href="#pop_tail-instance_method" title="#pop_tail (instance method)">#<strong>pop_tail</strong> ⇒ Object </a>
|
345
|
+
|
346
|
+
|
347
|
+
|
348
|
+
</span>
|
349
|
+
|
350
|
+
|
351
|
+
|
352
|
+
|
353
|
+
|
354
|
+
|
355
|
+
|
356
|
+
|
357
|
+
|
358
|
+
<span class="summary_desc"><div class='inline'>
|
359
|
+
<p>Este metodo nos permite extraer el tail de la lista.</p>
|
360
|
+
</div></span>
|
361
|
+
|
362
|
+
</li>
|
363
|
+
|
364
|
+
|
365
|
+
<li class="public ">
|
366
|
+
<span class="summary_signature">
|
367
|
+
|
368
|
+
<a href="#push_head-instance_method" title="#push_head (instance method)">#<strong>push_head</strong>(nodo) ⇒ Object </a>
|
369
|
+
|
370
|
+
|
371
|
+
|
372
|
+
</span>
|
373
|
+
|
374
|
+
|
375
|
+
|
376
|
+
|
377
|
+
|
378
|
+
|
379
|
+
|
380
|
+
|
381
|
+
|
382
|
+
<span class="summary_desc"><div class='inline'>
|
383
|
+
<p>Inseta un valor por la cabeza de la lista.</p>
|
384
|
+
</div></span>
|
385
|
+
|
386
|
+
</li>
|
387
|
+
|
388
|
+
|
389
|
+
<li class="public ">
|
390
|
+
<span class="summary_signature">
|
391
|
+
|
392
|
+
<a href="#push_others-instance_method" title="#push_others (instance method)">#<strong>push_others</strong>(values) ⇒ Object </a>
|
393
|
+
|
394
|
+
|
395
|
+
|
396
|
+
</span>
|
397
|
+
|
398
|
+
|
399
|
+
|
400
|
+
|
401
|
+
|
402
|
+
|
403
|
+
|
404
|
+
|
405
|
+
|
406
|
+
<span class="summary_desc"><div class='inline'>
|
407
|
+
<p>Este metodo nos permite insertar varios valores a la lista.</p>
|
408
|
+
</div></span>
|
409
|
+
|
410
|
+
</li>
|
411
|
+
|
412
|
+
|
413
|
+
<li class="public ">
|
414
|
+
<span class="summary_signature">
|
415
|
+
|
416
|
+
<a href="#size-instance_method" title="#size (instance method)">#<strong>size</strong> ⇒ Object </a>
|
417
|
+
|
418
|
+
|
419
|
+
|
420
|
+
</span>
|
421
|
+
|
422
|
+
|
423
|
+
|
424
|
+
|
425
|
+
|
426
|
+
|
427
|
+
|
428
|
+
|
429
|
+
|
430
|
+
<span class="summary_desc"><div class='inline'>
|
431
|
+
<p>Este metodo nos devuelve el tamaño de la lista.</p>
|
432
|
+
</div></span>
|
433
|
+
|
434
|
+
</li>
|
435
|
+
|
436
|
+
|
437
|
+
</ul>
|
438
|
+
|
439
|
+
|
440
|
+
|
441
|
+
<div id="constructor_details" class="method_details_list">
|
442
|
+
<h2>Constructor Details</h2>
|
443
|
+
|
444
|
+
<div class="method_details first">
|
445
|
+
<h3 class="signature first" id="initialize-instance_method">
|
446
|
+
|
447
|
+
#<strong>initialize</strong> ⇒ <tt><span class='object_link'><a href="" title="List (class)">List</a></span></tt>
|
448
|
+
|
449
|
+
|
450
|
+
|
451
|
+
|
452
|
+
|
453
|
+
</h3><div class="docstring">
|
454
|
+
<div class="discussion">
|
455
|
+
|
456
|
+
<p>Se asignan el valor del head y el tail de la lista, que inicialmente es
|
457
|
+
nil.</p>
|
458
|
+
|
459
|
+
|
460
|
+
</div>
|
461
|
+
</div>
|
462
|
+
<div class="tags">
|
463
|
+
|
464
|
+
|
465
|
+
</div><table class="source_code">
|
466
|
+
<tr>
|
467
|
+
<td>
|
468
|
+
<pre class="lines">
|
469
|
+
|
470
|
+
|
471
|
+
18
|
472
|
+
19
|
473
|
+
20
|
474
|
+
21</pre>
|
475
|
+
</td>
|
476
|
+
<td>
|
477
|
+
<pre class="code"><span class="info file"># File 'lib/P06/list.rb', line 18</span>
|
478
|
+
|
479
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span>
|
480
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
481
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
482
|
+
<span class='kw'>end</span></pre>
|
483
|
+
</td>
|
484
|
+
</tr>
|
485
|
+
</table>
|
486
|
+
</div>
|
487
|
+
|
488
|
+
</div>
|
489
|
+
|
490
|
+
<div id="instance_attr_details" class="attr_details">
|
491
|
+
<h2>Instance Attribute Details</h2>
|
492
|
+
|
493
|
+
|
494
|
+
<span id="head=-instance_method"></span>
|
495
|
+
<div class="method_details first">
|
496
|
+
<h3 class="signature first" id="head-instance_method">
|
497
|
+
|
498
|
+
#<strong>head</strong> ⇒ <tt>Object</tt>
|
499
|
+
|
500
|
+
|
501
|
+
|
502
|
+
|
503
|
+
|
504
|
+
</h3><div class="docstring">
|
505
|
+
<div class="discussion">
|
506
|
+
|
507
|
+
<p>Returns the value of attribute head</p>
|
508
|
+
|
509
|
+
|
510
|
+
</div>
|
511
|
+
</div>
|
512
|
+
<div class="tags">
|
513
|
+
|
514
|
+
|
515
|
+
</div><table class="source_code">
|
516
|
+
<tr>
|
517
|
+
<td>
|
518
|
+
<pre class="lines">
|
519
|
+
|
520
|
+
|
521
|
+
14
|
522
|
+
15
|
523
|
+
16</pre>
|
524
|
+
</td>
|
525
|
+
<td>
|
526
|
+
<pre class="code"><span class="info file"># File 'lib/P06/list.rb', line 14</span>
|
527
|
+
|
528
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_head'>head</span>
|
529
|
+
<span class='ivar'>@head</span>
|
530
|
+
<span class='kw'>end</span></pre>
|
531
|
+
</td>
|
532
|
+
</tr>
|
533
|
+
</table>
|
534
|
+
</div>
|
535
|
+
|
536
|
+
|
537
|
+
<span id="tail=-instance_method"></span>
|
538
|
+
<div class="method_details ">
|
539
|
+
<h3 class="signature " id="tail-instance_method">
|
540
|
+
|
541
|
+
#<strong>tail</strong> ⇒ <tt>Object</tt>
|
542
|
+
|
543
|
+
|
544
|
+
|
545
|
+
|
546
|
+
|
547
|
+
</h3><div class="docstring">
|
548
|
+
<div class="discussion">
|
549
|
+
|
550
|
+
<p>Returns the value of attribute tail</p>
|
551
|
+
|
552
|
+
|
553
|
+
</div>
|
554
|
+
</div>
|
555
|
+
<div class="tags">
|
556
|
+
|
557
|
+
|
558
|
+
</div><table class="source_code">
|
559
|
+
<tr>
|
560
|
+
<td>
|
561
|
+
<pre class="lines">
|
562
|
+
|
563
|
+
|
564
|
+
14
|
565
|
+
15
|
566
|
+
16</pre>
|
567
|
+
</td>
|
568
|
+
<td>
|
569
|
+
<pre class="code"><span class="info file"># File 'lib/P06/list.rb', line 14</span>
|
570
|
+
|
571
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_tail'>tail</span>
|
572
|
+
<span class='ivar'>@tail</span>
|
573
|
+
<span class='kw'>end</span></pre>
|
574
|
+
</td>
|
575
|
+
</tr>
|
576
|
+
</table>
|
577
|
+
</div>
|
578
|
+
|
579
|
+
</div>
|
580
|
+
|
581
|
+
|
582
|
+
<div id="instance_method_details" class="method_details_list">
|
583
|
+
<h2>Instance Method Details</h2>
|
584
|
+
|
585
|
+
|
586
|
+
<div class="method_details first">
|
587
|
+
<h3 class="signature first" id="each-instance_method">
|
588
|
+
|
589
|
+
#<strong>each</strong> ⇒ <tt>Object</tt>
|
590
|
+
|
591
|
+
|
592
|
+
|
593
|
+
|
594
|
+
|
595
|
+
</h3><div class="docstring">
|
596
|
+
<div class="discussion">
|
597
|
+
|
598
|
+
<p>Este metodo es el each que van a utilizar los metodos del módulo
|
599
|
+
Enumerable, pero esta acomodado a nuestra clase.</p>
|
600
|
+
|
601
|
+
|
602
|
+
</div>
|
603
|
+
</div>
|
604
|
+
<div class="tags">
|
605
|
+
|
606
|
+
|
607
|
+
</div><table class="source_code">
|
608
|
+
<tr>
|
609
|
+
<td>
|
610
|
+
<pre class="lines">
|
611
|
+
|
612
|
+
|
613
|
+
154
|
614
|
+
155
|
615
|
+
156
|
616
|
+
157
|
617
|
+
158
|
618
|
+
159
|
619
|
+
160</pre>
|
620
|
+
</td>
|
621
|
+
<td>
|
622
|
+
<pre class="code"><span class="info file"># File 'lib/P06/list.rb', line 154</span>
|
623
|
+
|
624
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_each'>each</span>
|
625
|
+
<span class='id identifier rubyid_i'>i</span> <span class='op'>=</span> <span class='ivar'>@tail</span>
|
626
|
+
<span class='kw'>while</span> <span class='id identifier rubyid_i'>i</span> <span class='op'>!=</span> <span class='kw'>nil</span>
|
627
|
+
<span class='kw'>yield</span> <span class='id identifier rubyid_i'>i</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span>
|
628
|
+
<span class='id identifier rubyid_i'>i</span> <span class='op'>=</span> <span class='id identifier rubyid_i'>i</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
|
629
|
+
<span class='kw'>end</span>
|
630
|
+
<span class='kw'>end</span></pre>
|
631
|
+
</td>
|
632
|
+
</tr>
|
633
|
+
</table>
|
634
|
+
</div>
|
635
|
+
|
636
|
+
<div class="method_details ">
|
637
|
+
<h3 class="signature " id="get_next-instance_method">
|
638
|
+
|
639
|
+
#<strong>get_next</strong>(value) ⇒ <tt>Object</tt>
|
640
|
+
|
641
|
+
|
642
|
+
|
643
|
+
|
644
|
+
|
645
|
+
</h3><div class="docstring">
|
646
|
+
<div class="discussion">
|
647
|
+
|
648
|
+
<p>Nos devuelve el nodo siguiente de un nodo que le pasamos por parámetros.</p>
|
649
|
+
|
650
|
+
|
651
|
+
</div>
|
652
|
+
</div>
|
653
|
+
<div class="tags">
|
654
|
+
|
655
|
+
|
656
|
+
</div><table class="source_code">
|
657
|
+
<tr>
|
658
|
+
<td>
|
659
|
+
<pre class="lines">
|
660
|
+
|
661
|
+
|
662
|
+
54
|
663
|
+
55
|
664
|
+
56
|
665
|
+
57
|
666
|
+
58
|
667
|
+
59
|
668
|
+
60
|
669
|
+
61
|
670
|
+
62
|
671
|
+
63
|
672
|
+
64
|
673
|
+
65
|
674
|
+
66
|
675
|
+
67
|
676
|
+
68</pre>
|
677
|
+
</td>
|
678
|
+
<td>
|
679
|
+
<pre class="code"><span class="info file"># File 'lib/P06/list.rb', line 54</span>
|
680
|
+
|
681
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_get_next'>get_next</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
|
682
|
+
<span class='kw'>if</span> <span class='ivar'>@head</span> <span class='op'>==</span> <span class='kw'>nil</span> <span class='comment'>#Comprobamos si la lista no esta vacía
|
683
|
+
</span> <span class='id identifier rubyid_raise'>raise</span> <span class='const'>RuntimeError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Lista vacía, no se puede extraer nodo</span><span class='tstring_end'>"</span></span>
|
684
|
+
<span class='kw'>else</span>
|
685
|
+
<span class='id identifier rubyid_i'>i</span> <span class='op'>=</span> <span class='ivar'>@tail</span>
|
686
|
+
<span class='ivar'>@valor</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
687
|
+
<span class='kw'>while</span> <span class='id identifier rubyid_i'>i</span> <span class='op'>!=</span> <span class='kw'>nil</span>
|
688
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_i'>i</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span> <span class='op'>==</span> <span class='id identifier rubyid_value'>value</span>
|
689
|
+
<span class='ivar'>@valor</span> <span class='op'>=</span> <span class='id identifier rubyid_i'>i</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
|
690
|
+
<span class='kw'>end</span>
|
691
|
+
<span class='id identifier rubyid_i'>i</span> <span class='op'>=</span> <span class='id identifier rubyid_i'>i</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
|
692
|
+
<span class='kw'>end</span>
|
693
|
+
<span class='kw'>end</span>
|
694
|
+
<span class='ivar'>@valor</span>
|
695
|
+
<span class='kw'>end</span></pre>
|
696
|
+
</td>
|
697
|
+
</tr>
|
698
|
+
</table>
|
699
|
+
</div>
|
700
|
+
|
701
|
+
<div class="method_details ">
|
702
|
+
<h3 class="signature " id="get_prev-instance_method">
|
703
|
+
|
704
|
+
#<strong>get_prev</strong>(value) ⇒ <tt>Object</tt>
|
705
|
+
|
706
|
+
|
707
|
+
|
708
|
+
|
709
|
+
|
710
|
+
</h3><div class="docstring">
|
711
|
+
<div class="discussion">
|
712
|
+
|
713
|
+
<p>Devuelve el nodo previo al nodo que pasamos por parámetros.</p>
|
714
|
+
|
715
|
+
|
716
|
+
</div>
|
717
|
+
</div>
|
718
|
+
<div class="tags">
|
719
|
+
|
720
|
+
|
721
|
+
</div><table class="source_code">
|
722
|
+
<tr>
|
723
|
+
<td>
|
724
|
+
<pre class="lines">
|
725
|
+
|
726
|
+
|
727
|
+
72
|
728
|
+
73
|
729
|
+
74
|
730
|
+
75
|
731
|
+
76
|
732
|
+
77
|
733
|
+
78
|
734
|
+
79
|
735
|
+
80
|
736
|
+
81
|
737
|
+
82
|
738
|
+
83
|
739
|
+
84
|
740
|
+
85
|
741
|
+
86</pre>
|
742
|
+
</td>
|
743
|
+
<td>
|
744
|
+
<pre class="code"><span class="info file"># File 'lib/P06/list.rb', line 72</span>
|
745
|
+
|
746
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_get_prev'>get_prev</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
|
747
|
+
<span class='kw'>if</span> <span class='ivar'>@head</span> <span class='op'>==</span> <span class='kw'>nil</span> <span class='comment'>#Comprobamos si la lista no esta vacía
|
748
|
+
</span> <span class='id identifier rubyid_raise'>raise</span> <span class='const'>RuntimeError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Lista vacía, no se puede extraer nodo</span><span class='tstring_end'>"</span></span>
|
749
|
+
<span class='kw'>else</span>
|
750
|
+
<span class='id identifier rubyid_i'>i</span> <span class='op'>=</span> <span class='ivar'>@tail</span>
|
751
|
+
<span class='ivar'>@valor</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
752
|
+
<span class='kw'>while</span> <span class='id identifier rubyid_i'>i</span> <span class='op'>!=</span> <span class='kw'>nil</span>
|
753
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_i'>i</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span> <span class='op'>==</span> <span class='id identifier rubyid_value'>value</span>
|
754
|
+
<span class='ivar'>@valor</span> <span class='op'>=</span> <span class='id identifier rubyid_i'>i</span><span class='period'>.</span><span class='id identifier rubyid_prev'>prev</span>
|
755
|
+
<span class='kw'>end</span>
|
756
|
+
<span class='id identifier rubyid_i'>i</span> <span class='op'>=</span> <span class='id identifier rubyid_i'>i</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
|
757
|
+
<span class='kw'>end</span>
|
758
|
+
<span class='kw'>end</span>
|
759
|
+
<span class='ivar'>@valor</span>
|
760
|
+
<span class='kw'>end</span></pre>
|
761
|
+
</td>
|
762
|
+
</tr>
|
763
|
+
</table>
|
764
|
+
</div>
|
765
|
+
|
766
|
+
<div class="method_details ">
|
767
|
+
<h3 class="signature " id="get_value-instance_method">
|
768
|
+
|
769
|
+
#<strong>get_value</strong>(value) ⇒ <tt>Object</tt>
|
770
|
+
|
771
|
+
|
772
|
+
|
773
|
+
|
774
|
+
|
775
|
+
</h3><div class="docstring">
|
776
|
+
<div class="discussion">
|
777
|
+
|
778
|
+
<p>Devuelve el valor de un nodo que le pasamos por parametros.</p>
|
779
|
+
|
780
|
+
|
781
|
+
</div>
|
782
|
+
</div>
|
783
|
+
<div class="tags">
|
784
|
+
|
785
|
+
|
786
|
+
</div><table class="source_code">
|
787
|
+
<tr>
|
788
|
+
<td>
|
789
|
+
<pre class="lines">
|
790
|
+
|
791
|
+
|
792
|
+
36
|
793
|
+
37
|
794
|
+
38
|
795
|
+
39
|
796
|
+
40
|
797
|
+
41
|
798
|
+
42
|
799
|
+
43
|
800
|
+
44
|
801
|
+
45
|
802
|
+
46
|
803
|
+
47
|
804
|
+
48
|
805
|
+
49
|
806
|
+
50</pre>
|
807
|
+
</td>
|
808
|
+
<td>
|
809
|
+
<pre class="code"><span class="info file"># File 'lib/P06/list.rb', line 36</span>
|
810
|
+
|
811
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_get_value'>get_value</span><span class='lparen'>(</span><span class='id identifier rubyid_value'>value</span><span class='rparen'>)</span>
|
812
|
+
<span class='kw'>if</span> <span class='ivar'>@head</span> <span class='op'>==</span> <span class='kw'>nil</span> <span class='comment'>#Comprobamos si la lista no esta vacía
|
813
|
+
</span> <span class='id identifier rubyid_raise'>raise</span> <span class='const'>RuntimeError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Lista vacía, no se puede extraer nodo</span><span class='tstring_end'>"</span></span>
|
814
|
+
<span class='kw'>else</span>
|
815
|
+
<span class='id identifier rubyid_i'>i</span> <span class='op'>=</span> <span class='ivar'>@tail</span>
|
816
|
+
<span class='ivar'>@valor</span><span class='op'>=</span><span class='kw'>nil</span>
|
817
|
+
<span class='kw'>while</span> <span class='id identifier rubyid_i'>i</span> <span class='op'>!=</span> <span class='kw'>nil</span>
|
818
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_i'>i</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span> <span class='op'>==</span> <span class='id identifier rubyid_value'>value</span>
|
819
|
+
<span class='ivar'>@valor</span> <span class='op'>=</span> <span class='id identifier rubyid_i'>i</span><span class='period'>.</span><span class='id identifier rubyid_value'>value</span>
|
820
|
+
<span class='kw'>end</span>
|
821
|
+
<span class='id identifier rubyid_i'>i</span> <span class='op'>=</span> <span class='id identifier rubyid_i'>i</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
|
822
|
+
<span class='kw'>end</span>
|
823
|
+
<span class='kw'>end</span>
|
824
|
+
<span class='ivar'>@valor</span>
|
825
|
+
<span class='kw'>end</span></pre>
|
826
|
+
</td>
|
827
|
+
</tr>
|
828
|
+
</table>
|
829
|
+
</div>
|
830
|
+
|
831
|
+
<div class="method_details ">
|
832
|
+
<h3 class="signature " id="pop_head-instance_method">
|
833
|
+
|
834
|
+
#<strong>pop_head</strong> ⇒ <tt>Object</tt>
|
835
|
+
|
836
|
+
|
837
|
+
|
838
|
+
|
839
|
+
|
840
|
+
</h3><div class="docstring">
|
841
|
+
<div class="discussion">
|
842
|
+
|
843
|
+
<p>Este metodo nos permite extraer el head de la lista.</p>
|
844
|
+
|
845
|
+
|
846
|
+
</div>
|
847
|
+
</div>
|
848
|
+
<div class="tags">
|
849
|
+
|
850
|
+
|
851
|
+
</div><table class="source_code">
|
852
|
+
<tr>
|
853
|
+
<td>
|
854
|
+
<pre class="lines">
|
855
|
+
|
856
|
+
|
857
|
+
132
|
858
|
+
133
|
859
|
+
134
|
860
|
+
135
|
861
|
+
136
|
862
|
+
137
|
863
|
+
138
|
864
|
+
139
|
865
|
+
140
|
866
|
+
141
|
867
|
+
142
|
868
|
+
143
|
869
|
+
144
|
870
|
+
145
|
871
|
+
146
|
872
|
+
147
|
873
|
+
148</pre>
|
874
|
+
</td>
|
875
|
+
<td>
|
876
|
+
<pre class="code"><span class="info file"># File 'lib/P06/list.rb', line 132</span>
|
877
|
+
|
878
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_pop_head'>pop_head</span>
|
879
|
+
<span class='id identifier rubyid_extraido'>extraido</span> <span class='op'>=</span> <span class='kw'>false</span>
|
880
|
+
<span class='kw'>if</span> <span class='ivar'>@head</span> <span class='op'>==</span> <span class='kw'>nil</span> <span class='comment'>#Comprobamos si la lista no esta vacía
|
881
|
+
</span> <span class='id identifier rubyid_raise'>raise</span> <span class='const'>RuntimeError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Lista vacía, no se puede extraer nodo</span><span class='tstring_end'>"</span></span>
|
882
|
+
<span class='kw'>else</span>
|
883
|
+
<span class='id identifier rubyid_extraido'>extraido</span> <span class='op'>=</span> <span class='kw'>true</span>
|
884
|
+
<span class='kw'>if</span> <span class='ivar'>@head</span> <span class='op'>==</span> <span class='ivar'>@tail</span>
|
885
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
886
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
887
|
+
<span class='kw'>else</span>
|
888
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_prev'>prev</span>
|
889
|
+
<span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
890
|
+
<span class='kw'>end</span>
|
891
|
+
<span class='kw'>end</span>
|
892
|
+
|
893
|
+
<span class='kw'>return</span> <span class='id identifier rubyid_extraido'>extraido</span>
|
894
|
+
<span class='kw'>end</span></pre>
|
895
|
+
</td>
|
896
|
+
</tr>
|
897
|
+
</table>
|
898
|
+
</div>
|
899
|
+
|
900
|
+
<div class="method_details ">
|
901
|
+
<h3 class="signature " id="pop_tail-instance_method">
|
902
|
+
|
903
|
+
#<strong>pop_tail</strong> ⇒ <tt>Object</tt>
|
904
|
+
|
905
|
+
|
906
|
+
|
907
|
+
|
908
|
+
|
909
|
+
</h3><div class="docstring">
|
910
|
+
<div class="discussion">
|
911
|
+
|
912
|
+
<p>Este metodo nos permite extraer el tail de la lista.</p>
|
913
|
+
|
914
|
+
|
915
|
+
</div>
|
916
|
+
</div>
|
917
|
+
<div class="tags">
|
918
|
+
|
919
|
+
|
920
|
+
</div><table class="source_code">
|
921
|
+
<tr>
|
922
|
+
<td>
|
923
|
+
<pre class="lines">
|
924
|
+
|
925
|
+
|
926
|
+
111
|
927
|
+
112
|
928
|
+
113
|
929
|
+
114
|
930
|
+
115
|
931
|
+
116
|
932
|
+
117
|
933
|
+
118
|
934
|
+
119
|
935
|
+
120
|
936
|
+
121
|
937
|
+
122
|
938
|
+
123
|
939
|
+
124
|
940
|
+
125
|
941
|
+
126
|
942
|
+
127
|
943
|
+
128</pre>
|
944
|
+
</td>
|
945
|
+
<td>
|
946
|
+
<pre class="code"><span class="info file"># File 'lib/P06/list.rb', line 111</span>
|
947
|
+
|
948
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_pop_tail'>pop_tail</span>
|
949
|
+
|
950
|
+
<span class='id identifier rubyid_extraido'>extraido</span> <span class='op'>=</span> <span class='kw'>false</span>
|
951
|
+
|
952
|
+
<span class='kw'>if</span> <span class='ivar'>@head</span> <span class='op'>==</span> <span class='kw'>nil</span> <span class='comment'>#Comprobamos si la lista no esta vacía
|
953
|
+
</span> <span class='id identifier rubyid_raise'>raise</span> <span class='const'>RuntimeError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Lista vacía, no se puede extraer nodo</span><span class='tstring_end'>"</span></span>
|
954
|
+
<span class='kw'>else</span>
|
955
|
+
<span class='id identifier rubyid_extraido'>extraido</span> <span class='op'>=</span> <span class='kw'>true</span>
|
956
|
+
<span class='kw'>if</span> <span class='ivar'>@head</span> <span class='op'>==</span> <span class='ivar'>@tail</span>
|
957
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
958
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
959
|
+
<span class='kw'>else</span>
|
960
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
|
961
|
+
<span class='ivar'>@tail</span><span class='period'>.</span><span class='id identifier rubyid_prev'>prev</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
962
|
+
<span class='kw'>end</span>
|
963
|
+
<span class='kw'>end</span>
|
964
|
+
<span class='kw'>return</span> <span class='id identifier rubyid_extraido'>extraido</span>
|
965
|
+
<span class='kw'>end</span></pre>
|
966
|
+
</td>
|
967
|
+
</tr>
|
968
|
+
</table>
|
969
|
+
</div>
|
970
|
+
|
971
|
+
<div class="method_details ">
|
972
|
+
<h3 class="signature " id="push_head-instance_method">
|
973
|
+
|
974
|
+
#<strong>push_head</strong>(nodo) ⇒ <tt>Object</tt>
|
975
|
+
|
976
|
+
|
977
|
+
|
978
|
+
|
979
|
+
|
980
|
+
</h3><div class="docstring">
|
981
|
+
<div class="discussion">
|
982
|
+
|
983
|
+
<p>Inseta un valor por la cabeza de la lista.</p>
|
984
|
+
|
985
|
+
|
986
|
+
</div>
|
987
|
+
</div>
|
988
|
+
<div class="tags">
|
989
|
+
|
990
|
+
|
991
|
+
</div><table class="source_code">
|
992
|
+
<tr>
|
993
|
+
<td>
|
994
|
+
<pre class="lines">
|
995
|
+
|
996
|
+
|
997
|
+
24
|
998
|
+
25
|
999
|
+
26
|
1000
|
+
27
|
1001
|
+
28
|
1002
|
+
29
|
1003
|
+
30
|
1004
|
+
31
|
1005
|
+
32</pre>
|
1006
|
+
</td>
|
1007
|
+
<td>
|
1008
|
+
<pre class="code"><span class="info file"># File 'lib/P06/list.rb', line 24</span>
|
1009
|
+
|
1010
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_push_head'>push_head</span> <span class='lparen'>(</span><span class='id identifier rubyid_nodo'>nodo</span><span class='rparen'>)</span>
|
1011
|
+
<span class='kw'>if</span> <span class='ivar'>@head</span> <span class='op'>==</span> <span class='kw'>nil</span>
|
1012
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="Nodo.html" title="Nodo (class)">Nodo</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_nodo'>nodo</span><span class='comma'>,</span><span class='kw'>nil</span><span class='comma'>,</span><span class='kw'>nil</span><span class='rparen'>)</span>
|
1013
|
+
<span class='ivar'>@tail</span> <span class='op'>=</span> <span class='ivar'>@head</span>
|
1014
|
+
<span class='kw'>else</span>
|
1015
|
+
<span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span> <span class='op'>=</span> <span class='const'><span class='object_link'><a href="Nodo.html" title="Nodo (class)">Nodo</a></span></span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_nodo'>nodo</span><span class='comma'>,</span><span class='kw'>nil</span><span class='comma'>,</span><span class='ivar'>@head</span><span class='rparen'>)</span>
|
1016
|
+
<span class='ivar'>@head</span> <span class='op'>=</span> <span class='ivar'>@head</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
|
1017
|
+
<span class='kw'>end</span>
|
1018
|
+
<span class='kw'>end</span></pre>
|
1019
|
+
</td>
|
1020
|
+
</tr>
|
1021
|
+
</table>
|
1022
|
+
</div>
|
1023
|
+
|
1024
|
+
<div class="method_details ">
|
1025
|
+
<h3 class="signature " id="push_others-instance_method">
|
1026
|
+
|
1027
|
+
#<strong>push_others</strong>(values) ⇒ <tt>Object</tt>
|
1028
|
+
|
1029
|
+
|
1030
|
+
|
1031
|
+
|
1032
|
+
|
1033
|
+
</h3><div class="docstring">
|
1034
|
+
<div class="discussion">
|
1035
|
+
|
1036
|
+
<p>Este metodo nos permite insertar varios valores a la lista. Estos valores
|
1037
|
+
se insertan por el head.</p>
|
1038
|
+
|
1039
|
+
|
1040
|
+
</div>
|
1041
|
+
</div>
|
1042
|
+
<div class="tags">
|
1043
|
+
|
1044
|
+
|
1045
|
+
</div><table class="source_code">
|
1046
|
+
<tr>
|
1047
|
+
<td>
|
1048
|
+
<pre class="lines">
|
1049
|
+
|
1050
|
+
|
1051
|
+
103
|
1052
|
+
104
|
1053
|
+
105
|
1054
|
+
106
|
1055
|
+
107</pre>
|
1056
|
+
</td>
|
1057
|
+
<td>
|
1058
|
+
<pre class="code"><span class="info file"># File 'lib/P06/list.rb', line 103</span>
|
1059
|
+
|
1060
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_push_others'>push_others</span><span class='lparen'>(</span><span class='id identifier rubyid_values'>values</span><span class='rparen'>)</span>
|
1061
|
+
<span class='kw'>for</span> <span class='id identifier rubyid_i'>i</span> <span class='kw'>in</span> <span class='lparen'>(</span><span class='int'>0</span><span class='op'>..</span><span class='id identifier rubyid_values'>values</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='op'>-</span><span class='int'>1</span><span class='rparen'>)</span>
|
1062
|
+
<span class='id identifier rubyid_push_head'>push_head</span><span class='lparen'>(</span><span class='id identifier rubyid_values'>values</span><span class='lbracket'>[</span><span class='id identifier rubyid_i'>i</span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
1063
|
+
<span class='kw'>end</span>
|
1064
|
+
<span class='kw'>end</span></pre>
|
1065
|
+
</td>
|
1066
|
+
</tr>
|
1067
|
+
</table>
|
1068
|
+
</div>
|
1069
|
+
|
1070
|
+
<div class="method_details ">
|
1071
|
+
<h3 class="signature " id="size-instance_method">
|
1072
|
+
|
1073
|
+
#<strong>size</strong> ⇒ <tt>Object</tt>
|
1074
|
+
|
1075
|
+
|
1076
|
+
|
1077
|
+
|
1078
|
+
|
1079
|
+
</h3><div class="docstring">
|
1080
|
+
<div class="discussion">
|
1081
|
+
|
1082
|
+
<p>Este metodo nos devuelve el tamaño de la lista.</p>
|
1083
|
+
|
1084
|
+
|
1085
|
+
</div>
|
1086
|
+
</div>
|
1087
|
+
<div class="tags">
|
1088
|
+
|
1089
|
+
|
1090
|
+
</div><table class="source_code">
|
1091
|
+
<tr>
|
1092
|
+
<td>
|
1093
|
+
<pre class="lines">
|
1094
|
+
|
1095
|
+
|
1096
|
+
90
|
1097
|
+
91
|
1098
|
+
92
|
1099
|
+
93
|
1100
|
+
94
|
1101
|
+
95
|
1102
|
+
96
|
1103
|
+
97
|
1104
|
+
98</pre>
|
1105
|
+
</td>
|
1106
|
+
<td>
|
1107
|
+
<pre class="code"><span class="info file"># File 'lib/P06/list.rb', line 90</span>
|
1108
|
+
|
1109
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_size'>size</span>
|
1110
|
+
<span class='id identifier rubyid_size'>size</span> <span class='op'>=</span> <span class='int'>0</span>
|
1111
|
+
<span class='id identifier rubyid_i'>i</span> <span class='op'>=</span> <span class='ivar'>@tail</span>
|
1112
|
+
<span class='kw'>while</span> <span class='id identifier rubyid_i'>i</span> <span class='op'>!=</span> <span class='kw'>nil</span>
|
1113
|
+
<span class='id identifier rubyid_i'>i</span> <span class='op'>=</span> <span class='id identifier rubyid_i'>i</span><span class='period'>.</span><span class='id identifier rubyid_next'>next</span>
|
1114
|
+
<span class='id identifier rubyid_size'>size</span><span class='op'>+=</span><span class='int'>1</span>
|
1115
|
+
<span class='kw'>end</span>
|
1116
|
+
<span class='kw'>return</span> <span class='id identifier rubyid_size'>size</span>
|
1117
|
+
<span class='kw'>end</span></pre>
|
1118
|
+
</td>
|
1119
|
+
</tr>
|
1120
|
+
</table>
|
1121
|
+
</div>
|
1122
|
+
|
1123
|
+
</div>
|
1124
|
+
|
1125
|
+
</div>
|
1126
|
+
|
1127
|
+
<div id="footer">
|
1128
|
+
Generated on Tue Nov 28 18:13:07 2017 by
|
1129
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
1130
|
+
0.9.9 (ruby-2.3.0).
|
1131
|
+
</div>
|
1132
|
+
|
1133
|
+
</div>
|
1134
|
+
</body>
|
1135
|
+
</html>
|