¿Cuál es la complejidad temporal de este código?

Si desea hacer esto en O (n) por qué está usando Loop en SWAP, una vez que el número es positivo o el mismo negativo. (En su código, por qué está inicializando el bucle interno de la función de intercambio mediante i + 1, omitirá un [0], ¿no le parece?)
Complejidad:
para i = 0 (se está ejecutando, el bucle inicializado J se ejecuta n-1 veces (j inicializado a 1, no 0) j = 1 a n) (puede ir a Intercambio de número positivo o Intercambio de número negativo)
i = 1, (El bucle interno de intercambio se ejecuta n-2 veces) … (Puede ir a Intercambio de número positivo o Intercambio de número negativo)
i = 2 ,, (El bucle interno de intercambio se ejecuta n-3 veces) .. (Puede ir a Intercambio de número positivo o Intercambio de número negativo)


Si hacemos un resumen
(n-1) + (n-2) + (n-3)… + 1 = n (n-1) / 2 (
La suma de los primeros n números naturales, La suma de los primeros n números naturales)

Entonces esto viene como O (n ^ 2)

El bucle en la función alt siempre se ejecutará sin importar qué, por lo que agregará una complejidad O (n).

Sin embargo, solo una de las funciones (swapwithpos o swapwithneg) se llamará para un valor particular de ‘i’. Como ‘i’ puede ser par (se llamará a swap con pos) o impar (se llamará a swapwithneg). Y cada una de estas funciones tiene una complejidad de peor caso O (n).

Entonces, la complejidad de este algoritmo es O (n ^ 2).

Mirando el código, el algoritmo es de naturaleza cuadrática.

No veo ningún caso con tres bucles posibles. La complejidad del tiempo es O (n ^ 2)

More Interesting

¿Cuáles son las preguntas formuladas durante las entrevistas de colocación?

¿Los reclutadores ven la calidad del código de la solución redonda de codificación en línea?

¿Hay algún instituto que lo capacite para descifrar entrevistas tecnológicas difíciles como Google / Amazon / Microsoft?

Quiero prepararme para trabajos de programador / desarrollador para enero o febrero de 2017. ¿Cómo debo asignar tiempo eficientemente si actualmente trabajo a tiempo completo?

¿Cuáles son algunas preguntas de aptitud formuladas en una entrevista?

¿Por qué ha contratado Microsoft tantos graduados frescos este año en comparación con años anteriores?

¿Cómo y desde dónde debo prepararme para las preguntas de la entrevista como 'diseñar un software para ...'?

Una persona tiene muchos amigos en Facebook. Dada una persona y un amigo, ¿cómo encuentro la mejor manera de determinar el camino entre ellos?

¿Qué tan útil es la preparación de InterviewBit para candidatos que tienen 0 a 3 años de experiencia industrial?

¿Qué tipo de preguntas puede esperar que le hagan en Hacker-x? Sé que es como una cita rápida en la que obtienes 5 minutos con cada compañía, pero me gustaría saberlo.

Mañana tengo una entrevista para un puesto de ingeniero integrado (ver descripción). ¿Qué preguntas puedo esperar en general y en el aspecto técnico?

¿Cómo diseñaría un sistema de cupones como una pregunta de diseño de software?

¿Cuáles son las preguntas financieras básicas formuladas en una entrevista?

¿Cuáles son las mejores y peores cosas de las entrevistas telefónicas técnicas?

He estado luchando durante un año para aprender algoritmos y todavía no puedo pasar ninguna entrevista técnica, ¿qué debo hacer?