Articles of tiempo complejidad

¿Qué tipo utiliza Java Collections.sort (nodos)?

Creo que es MergeSort, que es O (n log n). Sin embargo, el siguiente resultado no está de acuerdo: -1,0000000099000391,0000000099000427 1,0000000099000427,0000000099000346 5,0000000099000391,0000000099000346 1,0000000099000427,0000000099000345 5,0000000099000391,0000000099000345 1,0000000099000346,0000000099000345 Estoy ordenando una lista de nodos de 4 nodos por número de secuencia, y el género está haciendo 6 comparaciones. Estoy desconcertado porque 6> (4 log (4)). ¿Alguien me puede […]

Mueva todos los elementos impares hacia la mitad izquierda e incluso colóquelos en la mitad derecha en su lugar

Dado un conjunto con enteros positivos y negativos, mueva todos los elementos indexados impares a la izquierda e incluso los elementos indexados a la derecha. La parte difícil del problema es hacerlo en el lugar mientras se mantiene el orden. p.ej 7, 5, 6, 3, 8, 4, 2, 1 El resultado debería ser: 5, 3, […]

¿Cuáles son las complejidades de tiempo de varias estructuras de datos?

Estoy tratando de enumerar las complejidades de tiempo de las operaciones de estructuras de datos comunes como Arrays, Árbol de búsqueda binaria, Heap, Lista enlazada, etc. y especialmente me refiero a Java. Son muy comunes, pero creo que algunos de nosotros no estamos 100% seguros sobre la respuesta exacta. Cualquier ayuda, especialmente referencias, es muy […]

Complejidad del tiempo de un algoritmo recursivo

¿Cómo puedo calcular la complejidad de tiempo de un algoritmo recursivo? int pow1(int x,int n) { if(n==0){ return 1; } else{ return x * pow1(x, n-1); } } int pow2(int x,int n) { if(n==0){ return 1; } else if(n&1){ int p = pow2(x, (n-1)/2) return x * p * p; } else { int p […]

La complejidad del tiempo del algoritmo Sieve of Eratosthenes

De la Wikipedia: La complejidad del algoritmo es O(n(logn)(loglogn)) operaciones de bits. ¿Cómo llegas a eso? Que la complejidad incluye el término loglogn me dice que hay un sqrt(n) alguna parte. Supongamos que estoy ejecutando el tamiz en los primeros 100 números ( n = 100 ), suponiendo que marcar los números como compuesto toma […]

cómo calcular la complejidad de búsqueda binaria

Escuché a alguien decir que dado que la búsqueda binaria reduce a la mitad la entrada requerida para buscar, entonces es el algoritmo de registro (n). Como no soy de origen en matemáticas, no puedo relacionarme con él. ¿Alguien puede explicarlo con un poco más de detalle? ¿Tiene que hacer algo con la serie logarítmica?

Complejidad del tiempo del algoritmo de Euclides

Tengo dificultades para decidir cuál es la complejidad temporal del algoritmo de denominador común más grande de Euclides. Este algoritmo en pseudo-código es: function gcd(a, b) while b ≠ 0 t := b b := a mod b a := t return a Parece depender de a y b . Mi pensamiento es que la […]

Si las cadenas son inmutables en .NET, ¿por qué la subcadena toma O (n) el tiempo?

Dado que las cadenas son inmutables en .NET, me pregunto por qué se han diseñado de forma que string.Substring() tome O ( substring.Length ) en vez de O(1) ? es decir, ¿cuáles fueron las compensaciones, si las hubo?

Dado n puntos en un plano 2D, encuentre la cantidad máxima de puntos que se encuentran en la misma línea recta

A continuación está la solución que estoy tratando de implementar /** * Definition for a point. * class Point { * int x; * int y; * Point() { x = 0; y = 0; } * Point(int a, int b) { x = a; y = b; } * } */ public class Solution […]

¿Ordenar en tiempo lineal?

Dado un conjunto de entrada de n enteros en el rango [0..n ^ 3-1], proporcione un algoritmo de clasificación de tiempo lineal. Esta es una revisión de mi prueba el jueves, y no tengo idea de cómo abordar este problema.