Cómo diseñar algoritmos

Los algoritmos son la base y el marco de todos los programas de ordenador. Ellos son la secuencia de instrucciones precisas proporcionadas a un ordenador para lograr un resultado deseado . Los algoritmos son los programas de ordenador lo que la mente es el cuerpo humano. Existen muchos patrones de diseño algorítmico o paradigmas tales como algoritmos voraces , algoritmos divide y vencerás , algoritmos de programación dinámica y algoritmos de rastreo . Cada clase de algoritmos tiene sus propias structure.Things de diseño únicas que necesitará
Papel
Pen
Lápiz
Borrador
Mostrar Más instrucciones Matemáticas 1 optimización puede implicaría la selección de actualizar el valor de algo .

algoritmos codiciosos son algoritmos que proporcionan decisiones basadas en la información disponible y sin ningún tipo de previsión . Funcionan mejor en problemas de optimización y son fáciles de implementar. Los pasos generales para su diseño son:

1 . Crear una colección ( lista , ajuste , etc) de los candidatos (C )

2 . Encontrar un subconjunto ( S ) de la colección de los candidatos (C )

3 . Especificar los criterios que S debe satisfacer.

4 . Si se cumple con ese criterio ( factible) , seguir adelante para optimizar S

5 . Optimización de S significa seleccionar para minimizar o maximizar , dependiendo del problema particular . En el proceso es posible seleccionar el más grande o más pequeña solución.
2 Cortar el problema en partes más pequeñas , resolverlos y ensamblar las soluciones.

Divide y vencerás algoritmos siguen un enfoque de arriba hacia abajo en diseño de algoritmos . Ellos sub - dividir el problema en problemas más pequeños y finalmente volver a montar las soluciones a los pasos generales problems.The componentes para su diseño son:

1 . Definir el problema

2 . Cree una instancia del problema

3 . Divida esta instancia en pequeñas sub- instancias del mismo problema

4 . Resuelva cada uno de los sub- instancias en su propio

5 . Integrar y combinar las soluciones de los sub- casos a fin de obtener una solución para la instancia original .
3

algoritmos de programación dinámicos son una variante del algoritmo de divide y vencerás . Mientras que los algoritmos de divide y vencerás , que son recursivas siguen un enfoque de arriba hacia abajo para resolver problemas de optimización , programación dinámica sigue una técnica de abajo a arriba . Los pasos generales para su diseño son:

1 . Definir el problema

2 . Crear instancias del problema

3 . Construya una tabla de todos los sub- casos

4 . Comience con los más pequeños sub- casos

5 . Continuar con el aumento de tamaño sub - instancia agregando resultados de entradas ya computados

6 . Continuar hasta el último sub - instancia . La solución final obtenida es la solución al problema definido inicialmente .

Este método es iterativo , mientras que el enfoque de divide y vencerás es recursiva . Existen
4 algoritmos de búsqueda que hacen que la búsqueda eficiente.

el algoritmo de retroceso busca sistemáticamente para una solución entre las opciones disponibles , en el supuesto de que existe una solución . Los pasos generales para su diseño son:

1 . Comience con un vector vacío

2 . Deje que la solución estará representada por vectores (vi ..... Vm ) guía

3 . Traverse los vectores , la ampliación de los vectores parciales con un nuevo valor

4 . Backtrack si un vector no puedo representar una solución parcial

5 . Retire el valor de arrastre a partir del vector

6 . A continuación, proceder a ampliar el vector con valores alternativos

7 . Continuar el proceso hasta que se encuentre una solución.