¿Cómo se determina la mejor, la media y la peor información dada sobre lo que devuelve un método después del bucle?

No existe un enfoque general. Creo que si tiene algún problema con ese tipo de ejercicios, tendrá que estudiar más y mejor, en general, si no comprende la primera y la segunda solicitud / respuesta.

Sin embargo:
a) el mejor caso es cuando el método realiza menos bucles posibles. En ese caso es cuando se devuelve 1 porque solo realiza 10 bucles.
b) mismo razonamiento del punto a): el peor de los casos es cuando se ejecutan los bucles más posibles, de modo que cuando se devuelve -1 para un total de 45 bucles.
c) aquí ayuda algo de fondo de probabilidad. Debido a la hipótesis equivalente, debe calcular un promedio simple.
d) en este último punto, el promedio simple no es correcto porque hay diferentes probabilidades para cada resultado, por lo que debe hacer una suma ponderada según la probabilidad:
-1 con 20 por ciento de probabilidad => 45 bucles con 20 por ciento de probabilidad
0 con 10 por ciento de probabilidad => 20 bucles con 10 por ciento de probabilidad
1 con 70 por ciento de probabilidad => 10 bucles con 70 por ciento de probabilidad
en el caso promedio se realizan 45 * 0.2 + 20 * 0.1 + 10 * 0.7 bucles

  1. Pregúntese cuál es el mejor escenario posible en esta función. Bueno, en el mejor de los casos, llego al caso en que la función solo se repite 10 veces. Por lo tanto, la respuesta a esta pregunta es 10. ¿Podemos obtener mejores resultados que 10 iteraciones? No, entonces sabemos que este es el mejor tiempo de ejecución del caso.
  2. Pregúntese cuál es el peor escenario posible al ejecutar esta función. Sé que si tengo mala suerte, la función se repetirá 45 veces. ¿Podemos hacer algo peor que 45 iteraciones? No, entonces el peor tiempo de ejecución es de 45 iteraciones.
  3. En el caso promedio, imagine que ejecuta mucho esta función y vea qué sucede. En promedio, puedo esperar que esta función llegue a cada caso \ frac {1} {3} de las veces. Esto da como resultado un caso promedio de [math] \ frac {45 + 20 + 10} {3} = 25 [/ math] iteraciones. También puede ver esto desde la perspectiva de un valor esperado.
  4. Ahora las probabilidades de cada caso han cambiado y hacemos un cálculo similar del valor esperado para obtener [matemática] 45 \ cdot 0.2+ 20 \ cdot 0.1 + 10 \ cdot 0.7 = 18 [/ math]. E intuitivamente, el hecho de que esta respuesta sea menor que la parte anterior tiene sentido, porque ahora es mucho más probable que obtengamos el mejor de los casos.

El mejor caso es que el ciclo termina en 10 iteraciones (el caso donde devuelve 1). El peor de los casos es cuando termina en 45 iteraciones (el caso cuando devuelve -1). El caso promedio se encuentra al sumar cada uno de los tres valores de iteración posibles (número de bucles para 1, 0 y -1), y luego promediarlos al dividir entre 3. El caso esperado se encuentra al multiplicar el número de iteraciones por La probabilidad de ocurrencia. Esto produce 45 * .2 (20% de probabilidad de regresar -1) + 20 * .1 (10% de probabilidad de regresar 0) + 10 * .7 (70% de probabilidad de regresar 1). Sumar estos juntos da la respuesta 18.

More Interesting

¿Cuáles son los algoritmos de correspondencia de gráficos de última generación?

Cómo resolver el problema de 'La lista negra' en un CodeSprint reciente de HackerRank

¿Cómo se pueden usar los bucles para procesar matrices?

¿Cuál es un ejemplo de un problema causado por la escritura dinámica en la programación?

¿Encontrar el número máximo de reinas que puedes colocar en un tablero de ajedrez modificado con paredes negras? Por favor, discuta el enfoque del algoritmo, la implementación y la complejidad en detalles.

¿Dónde debo desarrollar mi lógica, en matemáticas relacionadas con la programación?

Cómo ordenar datos multivariados

Cada vez que intento resolver un problema en CodeChef o SPOJ, aparece el error de límite de tiempo excedido. ¿Qué tengo que hacer? ¿Me faltan algoritmos?

¿Qué tipo de algoritmos / pruebas / procedimientos analíticos se utilizan en el comercio minorista y para estudiar el comportamiento del consumidor?

¿Cuál es la explicación intuitiva para agregar flujo en bordes inversos en el algoritmo de flujo máximo? ¿Por qué necesitamos eso?

¿Cómo se relacionan el comercio algorítmico y de alta frecuencia y la teoría de gráficos?

¿Qué algoritmos gráficos debe implementar un estudiante de segundo año de CS?

¿Es malo si no entiendo un algoritmo? He estado tratando de entender algunos algoritmos (los recursivos en su mayoría), entiendo la mayoría de ellos, pero no pude entender algunos.

¿Puede alguien ayudarme a preparar un plan para preparar estructuras de datos y algoritmos en un mes de tiempo desde el punto de vista de las entrevistas?

¿Cuáles son algunas de las cosas que los algoritmos de aprendizaje automático pueden hacer pero los algoritmos de aprendizaje profundo no pueden hacer?