Portada arrow Miniglosario arrow Algoritmo In-situ (in place)
Algoritmo In-situ (in place)
sábado, 10 de noviembre de 2007

Se dice que un algoritmo es in-situ (ésto es un latinajo. En español sería algo así como "en el sitio". En inglés dicen In place) cuando la cantidad de memoria que requiere para resolver el problema para el que fue diseñado es siempre constante, independientemente del tamaño del problema a resolver.

  • Dicho de otros modos:
    Su complejidad espacial está acotada por una función constante
  • Su complejidad espacial pertenece al orden O(1)
  • No necesita solicitar memoria dinámicamente... puede resolver problemas de distinta talla con una cantidad fija de memoria.

Ejemplos: Los algoritmos de ordenación básicos como BubbleSort, SelectionSort o InsertionSort pueden ordenar arrays de distinto tamaño utilizando siempre la misma cantidad de variables. Son algoritmos In-situ. El algoritmo de ordenación QuickSort necesita "apuntarse" ciertos valores a medida que va ejecutándose... cuanto más grande es el array a ordenar, más de estos valores intermedios tiene que apuntarse. Para ello, necesita más memoria adicional cuanto más grande es el array que tiene que ordenar. Cuando QuickSort se implementa recursivamente, esa memoria se toma de la pila de ejecución (stack), y cuando se implementa iterativamente se toma del montículo (heap). Por lo tanto, es un algoritmo no in-situ.

Más: en wikipedia External link (en inglés)

 
←Artículo anterior   Artículo siguiente→

Artículos relacionados

No se encontraron artículos relacionados

¿Quién está en línea?

 web tracker

Suscríbete

RSS feed Sindicación RSS

(¿Qué es la sindicación RSS?)


Suscribir por e-mail

¿Dónde estoy?

Estás en La tecla de ESCAPE, un sitio web personal en el que nos gusta hablar de algoritmos, informática, tecnología, ciencia, ingeniería, internet... y cualquier tontería que se nos ocurra. El punto de vista de nuestros artículos técnicos suele ser muy básico, así que a menudo adoptamos grandes simplificaciones. (Más...-Términos de uso)