Articles of tiempo complejidad

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.

Complejidad del tiempo de ejecución de la tabla hash (insertar, buscar y eliminar)

¿Por qué sigo viendo diferentes complejidades de tiempo de ejecución para estas funciones en una tabla hash? En wiki, la búsqueda y la eliminación son O (n) (pensé que el punto de las tablas hash era tener una búsqueda constante, así que ¿cuál es el punto si la búsqueda es O (n)). En algunas notas […]

¿Por qué las listas de diferencias son más eficientes que la concatenación regular?

Actualmente estoy trabajando en el libro Learn you a haskell en línea, y he llegado a un capítulo donde el autor explica que algunas concatenaciones de listas pueden ser ineficaces: por ejemplo ((((a ++ b) ++ c) ++ d) ++ e) ++ f Es supuestamente ineficiente. La solución que se le ocurre al autor es […]

¿Qué causaría que un algoritmo tenga complejidad O (log n)?

Mi conocimiento de big-O es limitado, y cuando los términos de registro aparecen en la ecuación me da más. ¿Puede alguien explicarme en términos simples qué es un algoritmo O(log n) ? ¿De dónde viene el logaritmo? Esto surgió específicamente cuando estaba tratando de resolver esta pregunta de práctica de mitad de período: Deje que […]

C ++ cadena :: encontrar complejidad

¿Por qué la string::find() implementada de c ++ string::find() no usa el algoritmo KMP (y no se ejecuta en O(N + M) ) y se ejecuta en O(N * M) ? ¿Eso está corregido en C ++ 0x? Si la complejidad del hallazgo actual no es O(N * M) , ¿qué es eso? PD: lo […]