Galería de mapas mentales Mapa mental de algoritmo y estructura de datos
Un artículo sobre el mapa mental de algoritmos de estructura de datos, @algorithm, es una descripción de los pasos para resolver un problema específico. @Un algoritmo es una secuencia finita de instrucciones, una secuencia de pasos finitos para resolver un problema, donde cada instrucción Representemos una o más operaciones.
Editado a las 2023-11-28 15:16:46,Este es un mapa mental sobre una breve historia del tiempo. "Una breve historia del tiempo" es una obra de divulgación científica con una influencia de gran alcance. No sólo presenta los conceptos básicos de cosmología y relatividad, sino que también analiza los agujeros negros y la expansión. del universo. temas científicos de vanguardia como la inflación y la teoría de cuerdas.
¿Cuáles son los métodos de fijación de precios para los subcontratos de proyectos bajo el modelo de contratación general EPC? EPC (Ingeniería, Adquisiciones, Construcción) significa que el contratista general es responsable de todo el proceso de diseño, adquisición, construcción e instalación del proyecto, y es responsable de los servicios de operación de prueba.
Los puntos de conocimiento que los ingenieros de Java deben dominar en cada etapa se presentan en detalle y el conocimiento es completo, espero que pueda ser útil para todos.
Este es un mapa mental sobre una breve historia del tiempo. "Una breve historia del tiempo" es una obra de divulgación científica con una influencia de gran alcance. No sólo presenta los conceptos básicos de cosmología y relatividad, sino que también analiza los agujeros negros y la expansión. del universo. temas científicos de vanguardia como la inflación y la teoría de cuerdas.
¿Cuáles son los métodos de fijación de precios para los subcontratos de proyectos bajo el modelo de contratación general EPC? EPC (Ingeniería, Adquisiciones, Construcción) significa que el contratista general es responsable de todo el proceso de diseño, adquisición, construcción e instalación del proyecto, y es responsable de los servicios de operación de prueba.
Los puntos de conocimiento que los ingenieros de Java deben dominar en cada etapa se presentan en detalle y el conocimiento es completo, espero que pueda ser útil para todos.
algoritmo
concepto
①Un algoritmo es una descripción de los pasos para resolver un problema específico. ②Un algoritmo es una secuencia finita de instrucciones, una secuencia de pasos finitos para resolver un problema, donde cada instrucción representa una o más operaciones.
Características
finitud
Un algoritmo puede terminar después de un número finito de pasos y en un tiempo finito.
certeza
①Cada instrucción del algoritmo debe tener un significado exacto sin ambigüedad. ②Bajo cualquier condición, solo hay una ruta de ejecución. Es decir, para el mismo insumo se debe producir la misma salida.
factibilidad
Las operaciones descritas en el algoritmo son factibles. Las operaciones descritas en el algoritmo se pueden realizar mediante un número finito de operaciones de las operaciones básicas implementadas.
hay entrada
Un algoritmo tiene cero o más entradas.
hay salida
Un algoritmo tiene una o más salidas.
Requerir
exactitud
①La corrección se refiere a la ausencia de errores gramaticales. ②La precisión debe poder cumplir con los requisitos de problemas específicos y reflejar correctamente las necesidades.
legibilidad
①La legibilidad se refiere a qué tan fácil es para las personas leer el algoritmo. ②Una buena legibilidad ayuda a las personas a comprender el algoritmo.
Robustez
① La robustez se refiere principalmente a la capacidad de manejar errores o situaciones anormales. ②Cuando los datos de entrada son ilegales, el algoritmo puede manejarlos adecuadamente en lugar de producir resultados de salida inexplicables.
Requisitos de eficiencia y almacenamiento.
①La eficiencia describe el tiempo de ejecución del algoritmo y la capacidad de almacenamiento se refiere al espacio de capacidad de almacenamiento máximo requerido durante la ejecución del algoritmo. ② Requiere el menor tiempo posible y los menores requisitos de almacenamiento posibles.
estimar
Concepto de evaluación
①La base más importante para evaluar la calidad del algoritmo de un programa es cuántos recursos de la máquina consume el programa durante su ejecución. Entre varios recursos de la máquina, los más importantes son los recursos de tiempo y los recursos de espacio. ② Por lo tanto, al analizar un programa, lo más importante que preocupa a todos es el costo de tiempo del algoritmo utilizado en el programa cuando se ejecuta y el costo de espacio ocupado por las estructuras de datos utilizadas en el programa. ③En otras palabras, la complejidad del tiempo y la complejidad del espacio se utilizan generalmente para medir la eficiencia de un algoritmo.
Ángulo de evaluación
complejidad espacial
complejidad del tiempo
método
método de estimación y análisis ex ante
estadísticas post hoc
tamaño
O(1)<O(log2n)<O(n)<O(nlog2n)O(n2)<O(n3)<O(2n)<O(n!)O(nn)
Clasificación
Peor complejidad del tiempo
La peor complejidad temporal se refiere a la complejidad temporal del algoritmo en el peor de los casos.
mejor complejidad del tiempo
La mejor complejidad temporal se refiere a la complejidad temporal del algoritmo en el mejor de los casos.
complejidad del tiempo promedio
La complejidad del tiempo promedio se refiere al tiempo de ejecución esperado del algoritmo cuando todas las instancias de entrada posibles ocurren con la misma probabilidad.
tipo de pregunta
Principio de suma
Adecuado para varios bucles for independientes, no anidados entre sí
principio de multiplicación
Es adecuado para bucles for anidados, y el número de bucles for internos y externos es independiente entre sí.
Primer término más último término multiplicado por el número de términos dividido por dos
Es adecuado para anidar un bucle for, pero los tiempos de los bucles for interno y externo no son independientes ni están relacionados entre sí.
Mantenga el principio del término de potencia más alto
Es adecuado para ver directamente el número de ciclos, retener el término de potencia más alto y eliminar el coeficiente del término de potencia más alto.
Suponga el método desconocido
①Supongamos que el número de ciclos es igual a t.
② Encuentre la relación entre tey enumerando las primeras tres o cinco variables de bucle y el número de bucles. (aquí me refiero a la variable de bucle)
③ Sustituye la ecuación de t y i encontrada hasta ② en la condición del bucle.
④ Resuelve el valor de t.
⑤ Muestra la complejidad del tiempo. (Conserve el término de potencia más alto y elimine el coeficiente del término de potencia más alto).