Publicado el 19 de Abril del 2021
1.262 visualizaciones desde el 19 de Abril del 2021
3,7 MB
338 paginas
Creado hace 5a (17/01/2019)
algorithm
#algorithm
Tabla de contenido
Acerca de
Capítulo 1: Empezando con el algoritmo
Observaciones
Introducción a los algoritmos
Examples
Un problema algorítmico de muestra.
Comenzando con el algoritmo de zumbido simple de Fizz en Swift
Capítulo 2: A * Algoritmo de búsqueda de rutas
Introducción
Examples
Ejemplo simple de A * Pathfinding: un laberinto sin obstáculos
Capítulo 3: A * Pathfinding
Examples
Introducción a A *
Resolviendo un problema de 8 rompecabezas usando el algoritmo A *
A * Recorrer un laberinto sin obstáculos.
Capítulo 4: Algo: - Imprimir matriz am * n en forma de cuadrado
Introducción
Examples
Ejemplo de muestra
Escribe el código genérico
Capítulo 5: Algoritmo de Bellman-Ford
Observaciones
Examples
Algoritmo de ruta más corta de una sola fuente (dado que hay un ciclo negativo en una gráf
¿Por qué necesitamos relajar todos los bordes como máximo (V-1) veces?
Detectando ciclo negativo en una gráfica
Capítulo 6: Algoritmo de Floyd-Warshall
Examples
Algoritmo de ruta más corta de todos los pares
1
2
2
2
2
2
3
6
6
6
6
14
14
14
14
16
24
24
24
24
24
26
26
26
26
31
33
36
36
36
Capítulo 7: Algoritmo de Knuth Morris Pratt (KMP)
Introducción
Examples
Ejemplo de KMP
Capítulo 8: Algoritmo de linea
Introducción
Examples
Algoritmo de dibujo lineal de Bresenham
Capítulo 9: Algoritmo de partición entero
Examples
Información básica del algoritmo de partición entero
Implementación del algoritmo de partición Interger en C #
Capítulo 10: Algoritmo de Prim
Examples
Introducción al algoritmo de Prim
Capítulo 11: Algoritmo de subarray máximo
Examples
Información básica del algoritmo de subarray máximo
Implementación de C #
Capítulo 12: Algoritmo de suma de ruta máxima
Examples
Información básica de la suma máxima de ruta
Implementación de C #
Capítulo 13: Algoritmo de ventana deslizante
Examples
Algoritmo de ventana deslizante Información básica
Implementación del algoritmo de ventana deslizante en C #
Capítulo 14: Algoritmo delimitado por tiempo polinómico para la cobertura mínima de vértic
Introducción
Parámetros
Observaciones
39
39
39
39
41
41
41
41
45
45
45
46
48
48
48
56
56
56
57
59
59
59
60
62
62
62
63
65
65
65
65
Examples
Algoritmo Pseudo Código
Algoritmo PMinVertexCover (gráfico G)
Entrada conectada grafo G
Conjunto de cubierta de vértice mínimo de salida C
Capítulo 15: Algoritmo Numérico Catalán
Examples
Algoritmo Numérico Catalán Información Básica
Implementación de C #
Capítulo 16: Algoritmos codiciosos
Observaciones
Examples
Problema continuo de la mochila.
Codificacion Huffman
Problema de cambio
Problema de selección de actividad
El problema
Análisis
La solución
Capítulo 17: Algoritmos en línea
Observaciones
Teoría
Fuentes
Material básico
Otras lecturas
Código fuente
Examples
Paginación (almacenamiento en caché en línea)
Prefacio
Paginacion
Enfoque sin conexión
Enfoque en línea
65
65
65
65
65
67
67
67
68
69
69
69
69
69
73
75
75
75
77
78
78
78
80
80
80
80
80
80
80
80
81
82
Algoritmos de marcado
Capítulo 18: Algoritmos multihilo
Introducción
Sintaxis
Examples
Multiplexación de matriz cuadrada multihilo
Matriz de multiplicación vector multihilo
fusionar y ordenar multiproceso
Capítulo 19: Aplicaciones de la técnica codiciosa.
Observaciones
Fuentes
Examples
Ticket automático
Programación de intervalos
Minimizando la latitud
Offline Caching
Ejemplo (FIFO)
Ejemplo (LFD)
FIFO
LIFO
LRU
LFU
LFD
Algoritmo vs Realidad
Capítulo 20: Aplicaciones de Programación Dinámica.
Introducción
Observaciones
Definiciones
Examples
Números de Fibonacci
Notas
Capítulo 21: Arboles
83
86
86
86
86
86
86
86
88
88
88
88
88
91
94
98
98
99
101
102
103
105
106
107
108
108
108
108
108
108
111
112
Observaciones
Examples
Introducción
Representación típica del árbol del árbol.
Para comprobar si dos árboles binarios son iguales o no.
Capítulo 22: Árboles binarios de búsqueda
Introducción
Examples
Árbol de búsqueda binario - Inserción (Python)
Árbol de búsqueda binario - Eliminación (C ++)
El antepasado común más bajo en un BST
Árbol binario de búsqueda - Python
Capítulo 23: buscando
Examples
Búsqueda binaria
Introducción
Ejemplo de pregunta
Explicación de ejemplo
Búsqueda binaria: en números ordenados
Busqueda lineal
Rabin Karp
Análisis de búsqueda lineal (peor, promedio y mejores casos)
Capítulo 24: Búsqueda de amplitud
Examples
Encontrar el camino más corto desde la fuente a otros nodos
Encontrar la ruta más corta desde la fuente en un gráfico 2D
Componentes conectados de un gráfico no dirigido utilizando BFS.
Capítulo 25: Búsqueda de subcadena
Examples
Algoritmo KMP en C
Introducción al algoritmo de Rabin-Karp
112
112
112
113
114
116
116
116
116
118
120
121
123
123
123
123
123
123
124
125
126
127
130
130
130
137
138
143
143
143
145
Introducción al algoritmo de Knuth-Morris-Pratt (KMP)
Implementación Python del algoritmo KMP.
Capítulo 26: Clasificación
Parámetros
Examples
Estabilidad en la clasificación
Capítulo 27: Combinar clasificación
Examples
Fundamentos de clasificación de fusión
Implementación de Merge Sort en C & C #
Implementación de Merge Sort en Java
Fusionar la implementación de orden en Python
Implementación de Java de abajo hacia arriba
Fusionar la implementación de ordenación en Go
Capítulo 28: Complejidad de algoritmos
Observaciones
Trabajo
Lapso
Examples
Notación Big-Theta
Notación Big-Omega
Definicion formal
Notas
Referencias
Comparación de las notaciones asintóticas.
Campo de golf
Capítulo 29: Compruebe que dos cadenas son anagramas
Introducción
Examples
Muestra de entrada y salida
Código genérico para anagramas
148
152
154
154
154
154
156
156
156
157
159
160
160
161
163
163
164
164
165
165
166
166
166
167
167
168
170
170
170
170
171
Capítulo 30: Compruebe si un árbol es BST o no
Examples
Si un árbol de entrada dado sigue una propiedad del árbol de búsqueda binaria o no
Algoritmo para verificar si un árbol binario dado es BST
Capítulo 31: Editar distancia del algoritmo dinámico
Examples
Ediciones mínimas requeridas para convertir la cadena 1 a la cadena 2
Capítulo 32: El algoritmo de Dijkstra
Examples
Algoritmo de la ruta más corta de Dijkstra
Capítulo 33: El algoritmo de Kruskal
Observaciones
Examples
Implementación simple, más detallada.
Implementación simple, basada en conjuntos disjuntos
Implementación óptima, basada en conjuntos disjuntos
Implementación simple y de alto nivel.
Capítulo 34: El ancestro común más bajo de un árbol binario
Introducción
Examples
Encontrar el antepasado común más bajo
Capítulo 35: El problema más corto de la supersecuencia
Examples
Información básica sobre el problema de la supersecuencia más corta
Implementación del problema más corto de supersecuencia en C #
Capítulo 36: Exposición de matrices
Examples
Exposición de matrices para resolver problemas de ejemplo
Capítulo 37: Funciones hash
Examples
Introducción a las funciones hash.
173
173
173
173
175
175
175
178
178
178
183
183
183
183
183
184
185
186
186
186
186
187
187
187
188
190
190
190
195
195
195
Métodos hash
Tabla de picadillo
Ejemplos
Campo de golf
Códigos hash para tipos comunes en C #
Booleano
Byte , UInt16 , Int32 , UInt32 , Single
SByte
Carbonizarse
Int16
Int64 , doble
UInt64 , DateTime , TimeSpan
Decimal
Objeto
Cuerda
Tipo de valor
Nullable <T>
Formación
Referencias
Capítulo 38: Grafico
Introducción
Observaciones
Examples
Clasificación topológica
Ejemplo de problema y su solución
Algoritmo de Thorup
Detectando un ciclo en un gráfico dirigido usando Depth First Traversal
Introducción a la teoría de grafos
Almacenando Gráficos (Matriz de Adyacencia)
Almacenamiento de gráficos (lista de adyacencia)
Capítulo 39: Gráficos de travesías
195
195
196
197
197
197
197
197
197
198
198
198
198
198
198
198
199
199
199
200
200
200
200
200
201
202
202
204
209
213
216
Examples
Profundidad de la primera búsqueda de la función transversal
Capítulo 40: Heap Sort
Examples
Heap Sort Información Básica
Implementación de C #
Capítulo 41: La subsecuencia cada vez mayor
Examples
La información básica de la subsecuencia cada vez más creciente
Implementación de C #
Capítulo 42: La subsecuencia común más larga
Examples
Explicación de la subsecuencia común más larga
Capítulo 43: Notación Big-O
Observaciones
Examples
Un bucle simple
Un bucle anidado
Un ejemplo de O (log n)
Introducción
Enfoque ingenuo
Dicotomía
Explicación
Conclusión
O (log n) tipos de algoritmos
Capítulo 44: Orden de conteo
Examples
Información básica de orden de conteo
Implementacion Psuedocode
Implementación de C #
Capítulo 45: Ordenación rápida
216
216
217
217
217
218
219
219
219
221
223
223
223
229
229
230
230
231
232
232
232
232
233
233
233
236
236
236
236
237
238
Observaciones
Examples
Fundamentos de Quicksort
Implementación de C #
Implementación Haskell
Lomuto partición java implementacion
Quicksort en Python
Impresiones "[1, 1, 2, 3, 6, 8, 10]"
Capítulo 46: Ordenamiento de burbuja
Parámetros
Examples
Ordenamiento de burbuja
Implementación en Javascript
Implementación en C #
Implementación en C & C ++.
Implementación en Java
Implementación de Python
Capítulo 47: Primera búsqueda de profundidad
Examples
Introducción a la búsqueda en profundidad primero
Capítulo 48: Problema de mochila
Observaciones
Examples
Fundamentos del problema de la mochila
Solución implementada en C #
Capítulo 49: Programación dinámica
Introducción
Observaciones
Examples
Problema de mochila
Ejemplo de C ++:
Python (2.7.11) Ejemplo:
238
238
238
240
241
241
241
242
243
243
243
243
244
244
245
246
2
Comentarios de: Aprendizaje algorithm (1)