Skip to content

Commit 15a912c

Browse files
author
learn-software-engineering
committed
Publish revision 20280c599bbb01e12dbe3644f1f1a104409012aa
1 parent afdbb33 commit 15a912c

40 files changed

Lines changed: 421 additions & 421 deletions

File tree

docs/es/index.html

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

docs/es/programacion/estructuras-de-datos/0403-linked-lists/index.html

Lines changed: 2 additions & 2 deletions
Large diffs are not rendered by default.

docs/es/programacion/estructuras-de-datos/0404-stacks/index.html

Lines changed: 4 additions & 4 deletions
Large diffs are not rendered by default.

docs/es/programacion/estructuras-de-datos/0405-queues/index.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,13 +12,13 @@
1212
<a href="https://github.com/learn-software-engineering/learn-software-engineering/issues/new?title=Colas" class="td-page-meta--issue td-page-meta__issue" target=_blank rel=noopener><i class="fa-solid fa-list-check fa-fw"></i> Notificar una incidencia con la documentanción</a>
1313
<a id=print href=/es/programacion/estructuras-de-datos/printview/><i class="fa-solid fa-print fa-fw"></i> Imprimir la sección entera</a></div><div class=td-toc><nav id=TableOfContents><ul><li><a href=#operaciones-principales>Operaciones principales</a></li><li><a href=#implementación>Implementación</a></li><li><a href=#ejemplos-de-uso>Ejemplos de uso</a></li><li><a href=#conclusión>Conclusión</a></li></ul></nav></div><div class="taxonomy taxonomy-terms-cloud taxo-tags"><h5 class=taxonomy-title>Tags</h5><ul class=taxonomy-terms><li><a class=taxonomy-term href=https://learn-software.com/es/tags/abstracci%C3%B3n/ data-taxonomy-term=abstracci%C3%B3n><span class=taxonomy-label>Abstracción</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/arreglos/ data-taxonomy-term=arreglos><span class=taxonomy-label>Arreglos</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/binario/ data-taxonomy-term=binario><span class=taxonomy-label>Binario</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/bucles/ data-taxonomy-term=bucles><span class=taxonomy-label>Bucles</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/clases/ data-taxonomy-term=clases><span class=taxonomy-label>Clases</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/colas/ data-taxonomy-term=colas><span class=taxonomy-label>Colas</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/computadora/ data-taxonomy-term=computadora><span class=taxonomy-label>Computadora</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/condicionales/ data-taxonomy-term=condicionales><span class=taxonomy-label>Condicionales</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/control-de-flujo/ data-taxonomy-term=control-de-flujo><span class=taxonomy-label>Control De Flujo</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/cpu/ data-taxonomy-term=cpu><span class=taxonomy-label>CPU</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/decimal/ data-taxonomy-term=decimal><span class=taxonomy-label>Decimal</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/diccionarios/ data-taxonomy-term=diccionarios><span class=taxonomy-label>Diccionarios</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/encapsulamiento/ data-taxonomy-term=encapsulamiento><span class=taxonomy-label>Encapsulamiento</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/entrada/salida/ data-taxonomy-term=entrada/salida><span class=taxonomy-label>Entrada/Salida</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/estructuras-de-datos/ data-taxonomy-term=estructuras-de-datos><span class=taxonomy-label>Estructuras De Datos</span><span class=taxonomy-count>5</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/factorial/ data-taxonomy-term=factorial><span class=taxonomy-label>Factorial</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/fibonacci/ data-taxonomy-term=fibonacci><span class=taxonomy-label>Fibonacci</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/for/ data-taxonomy-term=for><span class=taxonomy-label>For</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/funciones/ data-taxonomy-term=funciones><span class=taxonomy-label>Funciones</span><span class=taxonomy-count>2</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/hardware/ data-taxonomy-term=hardware><span class=taxonomy-label>Hardware</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/herencia/ data-taxonomy-term=herencia><span class=taxonomy-label>Herencia</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/herramientas/ data-taxonomy-term=herramientas><span class=taxonomy-label>Herramientas</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/hexadecimal/ data-taxonomy-term=hexadecimal><span class=taxonomy-label>Hexadecimal</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/i/o/ data-taxonomy-term=i/o><span class=taxonomy-label>I/O</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/ide/ data-taxonomy-term=ide><span class=taxonomy-label>IDE</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/if/ data-taxonomy-term=if><span class=taxonomy-label>If</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/listas-enlazadas/ data-taxonomy-term=listas-enlazadas><span class=taxonomy-label>Listas Enlazadas</span><span class=taxonomy-count>3</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/l%C3%B3gica-booleana/ data-taxonomy-term=l%C3%B3gica-booleana><span class=taxonomy-label>Lógica Booleana</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/mapas/ data-taxonomy-term=mapas><span class=taxonomy-label>Mapas</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/memoria/ data-taxonomy-term=memoria><span class=taxonomy-label>Memoria</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/m%C3%A9todos/ data-taxonomy-term=m%C3%A9todos><span class=taxonomy-label>Métodos</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/objetos/ data-taxonomy-term=objetos><span class=taxonomy-label>Objetos</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/oop/ data-taxonomy-term=oop><span class=taxonomy-label>OOP</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/pilares-de-la-poo/ data-taxonomy-term=pilares-de-la-poo><span class=taxonomy-label>Pilares De La POO</span><span class=taxonomy-count>5</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/pilas/ data-taxonomy-term=pilas><span class=taxonomy-label>Pilas</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/polimorfismo/ data-taxonomy-term=polimorfismo><span class=taxonomy-label>Polimorfismo</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/poo/ data-taxonomy-term=poo><span class=taxonomy-label>POO</span><span class=taxonomy-count>5</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/programaci%C3%B3n/ data-taxonomy-term=programaci%C3%B3n><span class=taxonomy-label>Programación</span><span class=taxonomy-count>14</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/python/ data-taxonomy-term=python><span class=taxonomy-label>Python</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/recursi%C3%B3n/ data-taxonomy-term=recursi%C3%B3n><span class=taxonomy-label>Recursión</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/sistemas-de-numeraci%C3%B3n/ data-taxonomy-term=sistemas-de-numeraci%C3%B3n><span class=taxonomy-label>Sistemas De Numeración</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/software/ data-taxonomy-term=software><span class=taxonomy-label>Software</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/tipos-de-datos/ data-taxonomy-term=tipos-de-datos><span class=taxonomy-label>Tipos De Datos</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/variables/ data-taxonomy-term=variables><span class=taxonomy-label>Variables</span><span class=taxonomy-count>1</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/while/ data-taxonomy-term=while><span class=taxonomy-label>While</span><span class=taxonomy-count>1</span></a></li></ul></div></aside><main class="col-12 col-md-9 col-xl-8 ps-md-5" role=main><nav aria-label=breadcrumb class=td-breadcrumbs><ol class=breadcrumb><li class=breadcrumb-item><a href=/es/programacion/>Programación</a></li><li class=breadcrumb-item><a href=/es/programacion/estructuras-de-datos/>Estructuras de Datos</a></li><li class="breadcrumb-item active" aria-current=page>Colas</li></ol></nav><div class=td-content><h1>Colas</h1><div class=lead>Las colas (queues en inglés) son una estructura de datos abstracta que funciona bajo el principio FIFO (first in, first out), donde el primer elemento en entrar es también el primero en salir. Las colas se utilizan para ordenar elementos de forma que el que llega primero es procesado primero. Comprender su funcionamiento es esencial para cualquier programador.</div><header class=article-meta><div class="taxonomy taxonomy-terms-article taxo-tags"><h5 class=taxonomy-title>Tags:</h5><ul class=taxonomy-terms><li><a class=taxonomy-term href=https://learn-software.com/es/tags/programaci%C3%B3n/ data-taxonomy-term=programaci%C3%B3n><span class=taxonomy-label>Programación</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/estructuras-de-datos/ data-taxonomy-term=estructuras-de-datos><span class=taxonomy-label>Estructuras De Datos</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/listas-enlazadas/ data-taxonomy-term=listas-enlazadas><span class=taxonomy-label>Listas Enlazadas</span></a></li><li><a class=taxonomy-term href=https://learn-software.com/es/tags/colas/ data-taxonomy-term=colas><span class=taxonomy-label>Colas</span></a></li></ul></div></header><p>La naturaleza FIFO (first in, first out) de las colas se debe a que sólo se puede acceder y manipular el elemento inicial. Cuando se agrega un elemento a la cola se conoce como <em>&ldquo;enqueue&rdquo;</em>, mientras que eliminar un elemento se denomina <em>&ldquo;dequeue&rdquo;</em>.</p><p>Esto hace que el primer elemento en ser añadido a la cola también sea el primero en ser retirado, de ahí su comportamiento FIFO.</p><p><img src=/images/content/programming/0400-data-structures-1/diagram-queues.jpg alt="Diagrama de una cola"></p><hr><h2 id=operaciones-principales>Operaciones principales</h2><p>Las operaciones básicas de una cola son:</p><ul><li><strong>Enqueue:</strong> Agrega un elemento al final de la cola.</li><li><strong>Dequeue:</strong> Saca el elemento del frente de la cola.</li><li><strong>Peek:</strong> Obtiene el elemento al frente sin sacarlo.</li><li><strong>isEmpty:</strong> Consulta si la cola está vacía.</li></ul><hr><h2 id=implementación>Implementación</h2><p>Al igual que las pilas, las colas se pueden implementar usando listas enlazadas.
1414
Se agrega al final y se saca del frente manteniendo referencias a ambos extremos.</p><div class=highlight><pre tabindex=0 style=color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4><code class=language-python data-lang=python><span style=display:flex><span><span style=color:#66d9ef>class</span> <span style=color:#a6e22e>Node</span>:
15-
</span></span><span style=display:flex><span> <span style=color:#66d9ef>def</span> __init__(self, value):
15+
</span></span><span style=display:flex><span> <span style=color:#66d9ef>def</span> <span style=color:#a6e22e>__init__</span>(self, value):
1616
</span></span><span style=display:flex><span> self<span style=color:#f92672>.</span>value <span style=color:#f92672>=</span> value
1717
</span></span><span style=display:flex><span> self<span style=color:#f92672>.</span>next <span style=color:#f92672>=</span> <span style=color:#66d9ef>None</span>
1818
</span></span><span style=display:flex><span>
1919
</span></span><span style=display:flex><span>
2020
</span></span><span style=display:flex><span><span style=color:#66d9ef>class</span> <span style=color:#a6e22e>Queue</span>:
21-
</span></span><span style=display:flex><span> <span style=color:#66d9ef>def</span> __init__(self):
21+
</span></span><span style=display:flex><span> <span style=color:#66d9ef>def</span> <span style=color:#a6e22e>__init__</span>(self):
2222
</span></span><span style=display:flex><span> self<span style=color:#f92672>.</span>front <span style=color:#f92672>=</span> <span style=color:#66d9ef>None</span>
2323
</span></span><span style=display:flex><span> self<span style=color:#f92672>.</span>end <span style=color:#f92672>=</span> <span style=color:#66d9ef>None</span>
2424
</span></span><span style=display:flex><span> self<span style=color:#f92672>.</span>size <span style=color:#f92672>=</span> <span style=color:#ae81ff>0</span>
@@ -51,10 +51,10 @@
5151
</span></span><span style=display:flex><span> <span style=color:#66d9ef>def</span> <span style=color:#a6e22e>is_empty</span>(self):
5252
</span></span><span style=display:flex><span> <span style=color:#66d9ef>return</span> self<span style=color:#f92672>.</span>front <span style=color:#f92672>is</span> <span style=color:#66d9ef>None</span> <span style=color:#75715e># Returns true if front is None</span>
5353
</span></span><span style=display:flex><span>
54-
</span></span><span style=display:flex><span> <span style=color:#66d9ef>def</span> __len__(self):
54+
</span></span><span style=display:flex><span> <span style=color:#66d9ef>def</span> <span style=color:#a6e22e>__len__</span>(self):
5555
</span></span><span style=display:flex><span> <span style=color:#66d9ef>return</span> self<span style=color:#f92672>.</span>size
5656
</span></span><span style=display:flex><span>
57-
</span></span><span style=display:flex><span> <span style=color:#66d9ef>def</span> __str__(self):
57+
</span></span><span style=display:flex><span> <span style=color:#66d9ef>def</span> <span style=color:#a6e22e>__str__</span>(self):
5858
</span></span><span style=display:flex><span> values <span style=color:#f92672>=</span> []
5959
</span></span><span style=display:flex><span> current <span style=color:#f92672>=</span> self<span style=color:#f92672>.</span>front
6060
</span></span><span style=display:flex><span> <span style=color:#66d9ef>while</span> current:

docs/es/programacion/estructuras-de-datos/index.html

Lines changed: 1 addition & 1 deletion
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)