You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Mar 20, 2022. It is now read-only.
Copy file name to clipboardExpand all lines: 05_dataStructures/01_Queues/README.md
+58-15Lines changed: 58 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,9 +4,16 @@ Tabla de contenidos:
4
4
5
5
-[Métodos](#metodos)
6
6
-[Explicación](#explicacion)
7
-
-[Constructor](#constructor)
8
-
-[Enqueue](#enqueue)
9
-
-[Dequeue](#dequeue)
7
+
-[constructor](#constructor)
8
+
-[enqueue](#enqueue)
9
+
-[dequeue](#dequeue)
10
+
-[peek](#peek)
11
+
-[isEmpty](#isempty)
12
+
-[size](#size)
13
+
-[clear](#clear)
14
+
-[remove](#remove)
15
+
-[getIndex](#getindex)
16
+
-[sort](#sort)
10
17
11
18
Una cola o queue por su nombre en ingles es una estructura de datos que nos permite almacenar elementos donde insertamos y eliminamos datos de los extremos.
12
19
@@ -41,7 +48,7 @@ Para ver el **código completo** de los métodos, visita el siguiente [enlace](.
41
48
42
49
La explicacion detallada de cada cosa aqui ⤵
43
50
44
-
## Constructor
51
+
## constructor
45
52
46
53
Primero debemos de empezar a crear el constructor de la clase de la cola. Esto lo que nos va a permitir será crear un objeto con la clase llamada `queue` y posteriormente llamar a cada método de la clase.
47
54
@@ -52,17 +59,17 @@ class Queue {
52
59
}
53
60
```
54
61
55
-
## Enqueue
62
+
## enqueue
56
63
57
64
Este metodo como ya vimos, nos permite insertar un elemento al final de la cola.
58
65
59
66
```js
60
-
unshift(element){
61
-
this.items.unshift(element);
62
-
}
67
+
enqueue(element){
68
+
this.items.push(element);
69
+
}
63
70
```
64
71
65
-
## Dequeue
72
+
## dequeue
66
73
67
74
Este metodo nos permitira eliminar el primer elemento de la cola.
68
75
@@ -73,17 +80,19 @@ dequeue();
73
80
}
74
81
```
75
82
76
-
## Peek
83
+
## peek
77
84
78
-
Devuelve el primer valor de la cola sin eliminarlo.
85
+
Devuelve el primer valor de la cola sin eliminarlo. **He utilizado la sixtaxis del operador ternario** Si tienes dudas consulta la documentación [aquí](https://developer.mozilla.org/es/docs/Web/JavaScript/Reference/Operators/Conditional_Operator)
79
86
80
87
```js
81
88
peek() {
82
89
return!this.isEmpty() ?this.items[0] :undefined;
83
90
}
84
91
```
85
92
86
-
## IsEmpty
93
+
## isEmpty
94
+
95
+
Muestra un 0 si es que la cola se encuentra vacia
87
96
88
97
```js
89
98
isEmpty() {
@@ -93,30 +102,64 @@ Devuelve el primer valor de la cola sin eliminarlo.
93
102
94
103
## size
95
104
105
+
Muestra el tamaño de la cola con el método `length`
106
+
96
107
```js
97
108
109
+
size(){
110
+
returnthis.items.length;
111
+
}
98
112
```
99
113
100
114
## clear
101
115
102
-
```js
116
+
Vacia todos los elementos de la cola, dejando la cola vacía.
103
117
118
+
```js
119
+
clear() {
120
+
this.items= [];
121
+
}
104
122
```
105
123
106
124
## remove
107
125
108
-
```js
126
+
**Remueve un elemento en especifico** de la lista con `indexOf`
109
127
128
+
```js
129
+
remove(element) {
130
+
let index =this.items.indexOf(element);
131
+
if (index !==-1) {
132
+
this.items.splice(index,1);
133
+
}
134
+
}
110
135
```
111
136
112
137
## getIndex
113
138
114
-
```js
139
+
Regresa el indice de un elemento con `indexOf`
115
140
141
+
```js
142
+
getIndex(element) {
143
+
returnthis.items.indexOf(element);
144
+
}
116
145
```
117
146
118
147
## sort
119
148
149
+
Nos permite ordenar los elementos de la cola de menor a mayor **por defecto**. Con `sort`
150
+
120
151
```js
152
+
sort() {
153
+
this.items.sort()
154
+
}
155
+
```
156
+
157
+
Si queremos invertir la cola seria de la siguiente manera con `reverse`
121
158
159
+
```js
160
+
sortInverted() {
161
+
this.items.sort().reverse()
162
+
}
122
163
```
164
+
165
+
Recuerda que puedes checar el codigo completo [aqui](.\queue.js)
0 commit comments