No puedes probar nada basado solo en mediciones. (De hecho, puede probar que tales mediciones no brindan evidencia concluyente sobre los asintóticos: el algoritmo puede simplemente comportarse de manera diferente para casos de problemas realmente grandes).
Pero tales tiempos le permiten hacer conjeturas educadas.
- Si traza el tamaño del problema contra el tiempo de ejecución para escalar log-log y obtiene una línea recta, es probable que el tiempo de ejecución sea polinómico, [matemático] \ Theta (n ^ p) [/ matemático] y la pendiente de la línea determina la potencia [matemática] p [/ matemática].
- Si traza el tiempo de ejecución a escala logarítmica, una línea recta indica el tiempo de ejecución exponencial, [matemática] \ Theta (a ^ n) [/ matemática], donde la pendiente determina [matemática] a [/ matemática].
- Si traza el tamaño del problema para registrar la escala, una línea recta sugiere un tiempo de ejecución logarítmico (p. Ej., Búsqueda binaria), [matemática] \ Theta (\ log n) [/ matemática].
- ¿Cómo resolver el problema de corchetes en SPOJ (SPOJ: SQRBR)?
- ¿Por qué la agrupación aleatoria al iterar sobre ella y cambiarla por un elemento aleatorio entre 0 y el último elemento de la matriz no produce una barajadura distribuida uniformemente?
- Cómo agregar un elemento a una matriz en Java
- ¿Cómo podemos resolver el siguiente problema en O (n)?
- ¿Por qué los desarrolladores front-end necesitan conocer estructuras de datos y algoritmos?