Bolsa (informática)

Bolsa (informática)

Bolsa (informática)

Una bolsa es, en informática, un tipo abstracto de datos. Se trata de una colección de un número arbitrario de elementos (todos del mismo tipo) que no son necesariamente distintos, junto con una serie de procedimientos de acceso.

La especificación es muy parecida a la del TAD conjunto. La diferencia es que si hay elementos repetidos permanecen todas las ocurrencias. En los conjuntos sólo queda una de las ocurrencias. Al número de veces que un elemento aparece en la bolsa se denomina multiplicidad.

Operaciones

  • Crear: crea una bolsa vacía.
  • Eliminar: solo elimina una ocurrencia del elemento que se borra.
  • Cardinal: cuenta como distintas todas las repeticiones de un mismo elemento.
  • Agregar: agrega el elemento en la bolsa no importa si esta antes.

Bolsa en MAUDE

A continuación mostraremos una posible especificación del tipo abstracto Bolsa para Maude con sus operaciones mas usuales.

fmod BOLSA {X :: TRIV} is
pr INT .
sort Bolsa{X} .

*** generadores

op crear : -> Bolsa{X} [ctor] .
op {_} : X$Elt -> Bolsa{X} [ctor] .
op _U_ : Bolsa{X} Bolsa{X} -> Bolsa{X} [ctor comm assoc id: crear] .

*** constructores

op agregar : X$Elt Bolsa{X} -> Bolsa{X} .
op eliminar : X$Elt Bolsa{X} -> Bolsa{X} .
ops interseccion : Bolsa{X} Bolsa{X} -> Bolsa{X} [assoc comm] .
ops diferencia : Bolsa{X} Bolsa{X} -> Bolsa{X} .
*** selectores
op _perteneceA_ : X$Elt Bolsa{X} -> Bool .
op cardinal : Bolsa{X} -> Nat .
op repeticiones : X$Elt Bolsa{X} -> Nat .

*** variables

vars E E2 : X$Elt .
vars B B2 B3 : Bolsa{X} .
*** ecuaciones
eq agregar(E, B) = {E} U B .

eq eliminar(E, crear) = crear .
eq eliminar(E, {E2}) = if E == E2 then
crear
else
{E2}
fi .
eq eliminar(E, B U B2) = if E perteneceA B then
eliminar(E, B) U B2
else
B U eliminar(E, B2)
fi .

eq repeticiones(E, crear) = 0 .
eq repeticiones(E, {E2}) = if E == E2 then
1
else
0
fi .
eq repeticiones(E, B U B2) = repeticiones(E, B) + repeticiones(E, B2).

eq E perteneceA crear = false .
eq E perteneceA {E2} = E == E2 .
eq E perteneceA B U B2 = E perteneceA B or E perteneceA B2 .

eq cardinal(crear) = 0 .
eq cardinal({E}) = 1 .
eq cardinal(B U B2) = cardinal(B) + cardinal(B2) .

eq interseccion(crear, B) = crear .
eq interseccion({E}, B) = if E perteneceA B then
{E}
else
crear
fi .
eq interseccion({E} U B, B2) = if E perteneceA B2 then
{E} U interseccion(B, eliminar(E, B2))
else
interseccion(B, B2)
fi .

eq diferencia(B, crear) = B .
eq diferencia(B, {E}) = if E perteneceA B then
eliminar(E, B)
else
B
fi .
eq diferencia(B, B2 U B3) = diferencia(diferencia(B, B2), B3) .

endfm
Obtenido de "Bolsa (inform%C3%A1tica)"

Wikimedia foundation. 2010.

Игры ⚽ Поможем сделать НИР

Mira otros diccionarios:

  • Bolsa de Fráncfort — Saltar a navegación, búsqueda Edificio de la bolsa de Fráncfort. La Bolsa de Fráncfort (Frankfurter Wertpapierbörse) en Fráncfort del Meno, (Alemania) es una bolsa de valores definida como mercado secundario oficial, destinado a la negociación en …   Wikipedia Español

  • Guerra informática — Guerra informática, guerra digital o ciberguerra, se refiere al desplazamiento de un conflicto, en principio de carácter bélico, que toma el ciberespacio y las tecnologías de la información como escenario principal, en lugar de los campos de… …   Wikipedia Español

  • Conjunto (informática) — Este artículo o sección sobre informática necesita ser wikificado con un formato acorde a las convenciones de estilo. Por favor, edítalo para que las cumpla. Mientras tanto, no elimines este aviso puesto el 20 de abril de 2011. También puedes… …   Wikipedia Español

  • Lima — Para otros usos de este término, véase Lima (desambiguación). Lima Bandera …   Wikipedia Español

  • Steve Jobs — con un iPhone 4 en la Worldwide Developers Conference de 2010 …   Wikipedia Español

  • Acorn Computers — Este artículo trata sobre Acorn Computers. Para la actual usuaria de la marca que fabrica sólo ordenadores para Windows , véase Acorn Computers Ltd. Acorn Computers Lema The choice of experience Fundación Diciembre de 1978 …   Wikipedia Español

  • Lima — This article is about the capital of Peru. For other uses, see Lima (disambiguation). Lima View of Lima District from the San Cristobal hill …   Wikipedia

  • Apple — Para otros usos de este término, véase Apple (desambiguación). Apple Tipo Pública (NASDAQ …   Wikipedia Español

  • Bombay — Para otros usos de este término, véase Bombay (desambiguación). Mumbai / मुंबई Bombay …   Wikipedia Español

  • Falsos amigos — Anexo:Falsos amigos Saltar a navegación, búsqueda Los falsos amigos son palabras que pueden escribirse o tener una pronunciación similar en dos o más idiomas, pero en realidad significan conceptos diferentes, debido a sus distintas etimologías, o …   Wikipedia Español

Compartir el artículo y extractos

Link directo
Do a right-click on the link above
and select “Copy Link”