Skip to content

Commit 2769d94

Browse files
committed
docs: add cross-course references
1 parent 40d64e3 commit 2769d94

12 files changed

Lines changed: 77 additions & 5 deletions

docs/01-vector.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -338,6 +338,12 @@ primer elemento o necesita insertar por prioridad. En ese caso, un deque o heap
338338
podria expresar mejor el problema. La decision no depende de si una estructura
339339
es "mas avanzada"; depende de la operacion dominante.
340340

341+
## Conexiones con cursos futuros
342+
343+
Mas adelante, `rust-algorithms` reutilizara `Vector` como base natural para
344+
busqueda binaria, ordenamiento, dos punteros, ventanas sobre arreglos y tablas
345+
dinamicas. Aqui solo fijamos representacion, crecimiento e invariantes.
346+
341347
## Referencias
342348

343349
- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein,

docs/03-stack.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -286,6 +286,12 @@ recursión profunda o guardar estado adicional por frame. El tradeoff es que el
286286
programa debe hacer visible lo que antes hacía el call stack: qué falta visitar,
287287
qué resultado parcial existe y cuándo se termina un frame.
288288

289+
## Conexiones con cursos futuros
290+
291+
Mas adelante, `rust-algorithms` reutilizara `Stack` para recorrido DFS,
292+
backtracking, validacion de parentesis, evaluacion de expresiones y simulacion
293+
explicita de llamadas recursivas. Aqui solo fijamos LIFO, invariantes y API.
294+
289295
## Referencias
290296

291297
- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein,

docs/04-queue.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -318,6 +318,12 @@ para eventos donde solo importa el estado reciente. Fusionar trabajos exige mas
318318
logica, pero puede reducir trabajo duplicado. La invariante importante es que el
319319
sistema no acepte trabajo ilimitado sin una decision explicita.
320320

321+
## Conexiones con cursos futuros
322+
323+
Mas adelante, `rust-algorithms` reutilizara `Queue` para BFS, procesamiento por
324+
niveles, simulaciones discretas y planificacion FIFO. Aqui solo fijamos FIFO,
325+
buffer circular e invariantes de crecimiento.
326+
321327
## Referencias
322328

323329
- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein,

docs/05-deque.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -317,6 +317,12 @@ trabajadores roban unidades mas antiguas desde el frente. La invariante clave es
317317
que cada tarea vive una sola vez en el deque y que cada extraccion transfiere
318318
ownership logico de esa tarea.
319319

320+
## Conexiones con cursos futuros
321+
322+
Mas adelante, `rust-algorithms` reutilizara `Deque` para ventanas deslizantes,
323+
BFS bidireccional, colas monotonicas y tecnicas donde ambos extremos importan.
324+
Aqui solo fijamos doble extremo, wraparound y costos operativos.
325+
320326
## Referencias
321327

322328
- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein,

docs/06-heap.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -320,6 +320,12 @@ el aprendizaje enfocado. Para prioridades custom, un wrapper que implemente
320320
almacenado puede ser util, pero obliga a decidir como se guarda la funcion, como
321321
se clona y como afecta la firma publica.
322322

323+
## Conexiones con cursos futuros
324+
325+
Mas adelante, `rust-algorithms` reutilizara `Heap` para heapsort, top-k,
326+
seleccion por prioridad, Dijkstra, Prim y planificadores. Aqui solo fijamos
327+
propiedad heap, `sift up`, `sift down`, `heapify` e invariantes.
328+
323329
## Referencias
324330

325331
- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein,

docs/07-trie.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -316,6 +316,12 @@ El costo es que cada operacion debe comparar segmentos, partir nodos cuando hay
316316
divergencia y cuidar mas casos en borrado. La invariante deja de ser "un nodo
317317
por char" y pasa a ser "un nodo por segmento comun".
318318

319+
## Conexiones con cursos futuros
320+
321+
Mas adelante, `rust-algorithms` reutilizara `Trie` para autocomplete, matching
322+
por prefijo, diccionarios, ruteo por cadenas y busquedas sobre alfabetos. Aqui
323+
solo fijamos nodos, terminales, prefijos y politica Unicode.
324+
319325
## Referencias
320326

321327
- Robert Sedgewick y Kevin Wayne, *Algorithms*, secciones de tries.

docs/08-graph.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -366,6 +366,16 @@ consultas de existencia puede justificar matriz si la memoria cabe. Un archivo
366366
de intercambio entre sistemas puede ser lista de aristas porque es facil de
367367
serializar, ordenar, auditar y transformar.
368368

369+
## Conexiones con cursos futuros
370+
371+
Mas adelante, `rust-algorithms` reutilizara `Graph` para BFS, DFS, caminos
372+
minimos, arboles de expansion, orden topologico y componentes conectados. Aqui
373+
solo fijamos representacion, direccion, peso y operaciones estructurales.
374+
375+
Tambien aparecera como modelo en system design y distributed systems: grafos de
376+
dependencias, topologias de servicios, rutas, ownership de datos y propagacion
377+
entre nodos. Esas conexiones se citaran alli sin mover algoritmos a este repo.
378+
369379
## Referencias
370380

371381
- Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest y Clifford Stein,

docs/09-btree.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -315,6 +315,12 @@ bajar: si el hijo tiene pocas claves, toma prestado de un hermano con excedente
315315
o fusiona con un hermano y baja una clave del padre. Si borras una clave interna,
316316
reemplazala por predecesor o sucesor desde un subarbol con espacio suficiente.
317317

318+
## Conexiones con cursos futuros
319+
320+
Mas adelante, `rust-database-internals` reutilizara `BTree` para indices por
321+
pagina, busqueda por rango, fanout, localidad y layouts persistentes. Aqui solo
322+
fijamos busqueda multiway, split, orden e invariantes en memoria.
323+
318324
## Referencias
319325

320326
- Rudolf Bayer y Edward M. McCreight, articulo original sobre B-trees.

docs/10-hashmap.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -312,6 +312,12 @@ quadratic probing o double hashing. El borrado necesita tombstones para no corta
312312
las secuencias de busqueda. El resize debe reinserta entradas vivas y descartar
313313
tombstones.
314314

315+
## Conexiones con cursos futuros
316+
317+
Mas adelante, `rust-algorithms` reutilizara `HashMap` para conteos,
318+
deduplicacion, memoizacion, two-sum, indices auxiliares y tablas de simbolos.
319+
Aqui solo fijamos hashing, buckets, colisiones y factor de carga.
320+
315321
## Referencias
316322

317323
- Rust Standard Library, `std::collections::HashMap`.

docs/11-bloom-filter.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -381,6 +381,13 @@ overflow y evitar borrar valores que nunca fueron insertados. Si esos invariante
381381
fallan, la estructura puede crear falsos negativos, justo lo que el Bloom Filter
382382
clasico evita.
383383

384+
## Conexiones con cursos futuros
385+
386+
Mas adelante, cursos de database internals, caches y distributed systems
387+
reutilizaran Bloom filters para evitar lecturas innecesarias, resumir conjuntos,
388+
filtrar claves por segmento y reducir trafico entre nodos. Aqui solo fijamos
389+
pertenencia probabilistica, falsos positivos y dimensionamiento.
390+
384391
## Referencias
385392

386393
- Burton H. Bloom, "Space/Time Trade-offs in Hash Coding with Allowable Errors",

0 commit comments

Comments
 (0)