En el de informática un arsenal del es una estructura de datos que consiste en un grupo de elementos que sean alcanzados por la indexación de direcciones . En la mayoría de programación cada elemento de los lenguajes tiene el mismo tipo de datos y el arsenal ocupa un área contigua del almacenaje . La mayoría de los lenguajes de programación tienen un tipo de datos incorporado del arsenal del .

Un cierto arsenal de programación de la ayuda de los lenguajes que programa (e., APL, más nuevas versiones de FORTRAN ) que generaliza operaciones y funciones para trabajar transparente sobre órdenes como hacen con escalares, en vez de requerir la colocación sobre miembros de arsenal.

Las matrices multidimensionales están alcanzadas usar más de un índice: uno para cada dimensión.

Los órdenes se pueden clasificar como órdenes fixed-sized del (conocidos a veces como órdenes estáticos del ) cuyo se ha asignado tamaño no pueda cambiar una vez su almacenaje, o el dinámico de los órdenes del, que puede ser vuelto a clasificar según el tamaño.

Órdenes

Las variables almacenan normalmente solamente un solo valor pero, en algunas situaciones, es útil tener una variable que pueda almacenar una serie de valores relacionados - usar un arsenal. Por ejemplo, suponer que un programa está requerido que calculará la edad media entre un grupo de seis estudiantes. Las edades de los estudiantes se podían almacenar en seis variables de número entero en C:

lang=" del internacional age1; internacional age2; internacional age3; …

Sin embargo, una mejor solución sería declarar un arsenal de seis elementos:

lang=" del int;

Esto crea un arsenal de seis elementos; los elementos se pueden alcanzar como edad con edad en la C.

(Nota: en el Visual Basic .NET la edad similar del Dim de la declaración (6) como Integer creará un arsenal del elemento del siete, tenido acceso como age (0) con el age (6).)

Usos

Debido a sus características de funcionamiento, los órdenes se utilizan para ejecutar otras estructuras de datos, tales como montones, los apilados de las coletas de Deques de las tablas de elección arbitraria, el encadena, y el VLists

Algunos algoritmos almacenan un número variable de elementos en parte de un arsenal de tamaño fijo, que es equivalente a usar el arsenal dinámico con una capacidad fija. Ver el arsenal dinámico para los detalles.

Los órdenes asociativos proporcionan un mecanismo para poner en orden-como la funcionalidad sin gastos indirectos enormes del almacenaje cuando los valores de índice son escasos. Los órdenes asociativos especializados con llaves del número entero incluyen los intentos de Patricia y el Judy pone en orden

Indexación de direcciones

considera también:

l índice (tecnología de la información)

Los valores de índice válidos de cada dimensión de un arsenal son un sistema limitado de números enteros. Los ambientes de programación que comprueban los índices para saber si hay validez se dicen para realizar los límites que comprueban .

Índice del primer elemento

El índice del primer elemento (a veces llamado el " del ; origin" ) varía por lengua. Hay tres puestas en práctica principales: el cero-basó, uno-basado, y n-basado pone en orden, para el cual el primer elemento tiene un índice de cero, uno, o un valor programador-especificado. El arsenal cero-basado es más natural en el en lenguaje de máquina de la raíz y fue popularizado por el lenguaje de programación C, en el cual la abstracción del arsenal del es muy débil, y un n del índice de un arsenal unidimensional es simplemente la compensación del elemento alcanzado de la dirección del primera (o del " zeroth") elemento (escalado por el tamaño del elemento). los órdenes Uno-basados se basan en la notación tradicional de las matemáticas para las matrices y más, pero no todo, las secuencias matemáticas n-basado se hace disponible así que el programador está libre de elegir el límite más bajo, que puede incluso ser negativo, que se adapta lo más naturalmente posible para el problema actual.

La lista de los lenguajes de programación abajo, indica el índice bajo usado por varias idiomas.

Los partidarios de la indexación de direcciones cero-basada de critican a veces uno-basado y los órdenes n-basados de para ser más lentos. Estas críticas se confunden a menudo cuando uno-basado o n-basó accesos del arsenal de se optimiza con la eliminación común del subexpression (para los solos órdenes dimensionados) y/o con los vectores de droga bien definidos (para los órdenes multi-dimensionados). Sin embargo, en las matrices multidimensionales donde la compensación de la red en memoria linear se computa de todos los índices, la indexación de direcciones cero-basada de es más natural, más simple, y más rápidamente. Dijkstra expresó una opinión en este discusión: Porqué la enumeración debe comenzar en cero.

Los 0 discusiones de based/1-based no se limitan apenas a los lenguajes de programación. Por ejemplo, la planta baja de un edificio es " del botón del elevador; 0" en Francia, pero " del botón del elevador; 1" en los E.

Matrices multidimensionales

Los órdenes ordinarios son puestos en un índice por un solo número entero. También útil, particularmente en usos numéricos y de los gráficos, es el concepto de una matriz multidimensional del, en la cual ponemos en un índice en el arsenal usar una lista pedida de números enteros, por ejemplo en al . El número de números enteros en la lista usada al índice en la matriz multidimensional es siempre igual y se refiere como la dimensionalidad arsenal, y los límites en cada uno de éstos se llaman las dimensiones arsenal. Un arsenal con el k de la dimensionalidad a menudo se llama el k - dimensional. Los órdenes unidimensionales corresponden a los órdenes simples discutidos hasta el momento; las matrices bidimensionales son una representación particularmente común para las matrices . En la práctica, la dimensionalidad de un arsenal excede raramente de tres. El trazado de un arsenal unidimensional en memoria es obvio, puesto que la memoria es lógicamente sí mismo arsenal unidimensional de a (muy grande). Cuando alcanzamos órdenes alto-dimensionales, sin embargo, el problema es no más obvio. Suponer que queremos representar esta matriz bidimensional simple: del

l \ mathbf {A} = \ comenzar {el bmatrix} 1 y 2 y 3 \ \ 4 y 5 y 6 \ \ 7 y 8 y 9 \ extremo {bmatrix} Es el más común poner en un índice este arsenal usar el RC - convención, donde elemento está referido en fila, columna manera o A_ {fila,} \, de la columna , por ejemplo: A_ del {1.2} =2 \ \ de A_ {ldots, \, 3.3} =9 \,

Las maneras comunes de poner en un índice en matrices multidimensionales incluyen:
orden Fila-principal . Utilizado especialmente por órdenes estático-declarados en el C . Los elementos de cada fila se almacenan en orden.

Ver también


Arsenal que rebana
Clase de la colección
Comparación de los lenguajes de programación (arsenal)
Arsenal del paralelo
(de informática) determinado
Arsenal escaso
Wikibooks: Estructuras de datos/órdenes
Wikibooks: Ada que programa/tipos/arsenal

.

  • Zenithic
  • Arsenal
    Random links:Kentville, Nueva Escocia | Antonio-Jean Gros | El Dr. G: Examinador médico | Sorpresa (nave) | Alan Badel

  • © 2007-2008 enciclopediaespana.com; article text available under the terms of GFDL, from en.wikipedia.org
    ="http://pagead2.googlesyndication.com/pagead/show_ads.js">