martes, 31 de julio de 2018

ARREGLOS ARRAYS  O VECTORES 



El arreglo es un tipo estructurado de datos, y representa, en un ambiente de programación, a las entidades matemáticas denominadas vectores y matrices. Sin lugar a dudas, es la estructura de datos más empleada por los programadores; y en algunos lenguajes de programación suele ser la única estructura explícita disponible. Se entiende por estructura de datos, la acción de agrupar elementos primitivos en cierta forma. La forma más simple es agrupar componentes de igual tipo y asociarle un número de orden a cada componente éste es el caso del arreglo


Es preciso definir como denotar, o accesar, a una componente del arreglo.
 Una visión esquemática útil del arreglo es la siguiente, asumiendo declarada una variable
vector v de tipo A.
 var v:A;
 NOTACION
Es decir, visualizar un objeto de tipo A como un vector renglón. Para denotar la componente
de orden j se emplea el nombre de la variable, y luego encerrado entre paréntesis cuadrados
el índice j.
 v es una variable de tipo A, y está formada por una colección (secuencia o arreglo) de
componentes de tipo C. La secuencia está indexada por los elementos de I; es decir para
cada elemento de I existe un valor asociado de la secuencia, de tipo C.
Ejemplos de Definición de tipo arreglo.

 Type vector = array [1..10] of real;
 bitvector = array [1..32] of boolean;
 linea = array [1..80] of char;
 tabla = array [1..n] of integer;
Arreglos Bidimensionales. Matrices.

 Si en el arreglo unidimensional o vector, definido antes, se escogen las componentes tal que
éstas, a su vez, sean de tipo arreglo unidimensional se tendrá:
 type matriz = array [R] of array [C] of T;
 Donde R es dominio de los renglones y C el dominio de las columnas. T es el tipo de las
componentes o tipo base.
 Con: var m : matriz;
Se tendrá que una componente puede anotarse:
 m[i][j]
 Para simplificar la notación se acepta:
 Type matriz = array [R, C] of T;
 Y puede accesarse a una componente según:
 m[i,j]
 Ejemplo: Dos matrices, m y n, de 100 por 100 de valores enteros puede declararse:
 const dimension = 100;
 type matriz = array [1..dimension,1..dimension] of integer;
 var m, n: matriz;

Arreglos Multidimensionales.

 Pueden definirse según:
 Type M = array [T1,T2,...TN] of T;
 Donde: T1 a TN son los tipos de los índices.
 T es el tipo base.

 En general:
<tipoarreglo>::=
 'array [' {<tipo ordinal>* ',' } '] of' <tipobase>
 Ejemplo: Sean las declaraciones:
 a: array [1..3] of T;
 b: array [1..2] of a;
 Se puede interpretar gráficamente las estructuras, según:
De esta forma pueden
verse los arreglos multidimensionales como árboles.
Para el caso de matrices, puede representarse como es tradicional, según:



 Arreglos estáticos.

 Es importante destacar que los arreglos en Pascal son estructuras estáticas; es decir, el
número de sus componentes queda determinado en el momento en que el programa es
traducido a lenguaje de máquina. Esto está de acuerdo con la estrategia de diseño de Pascal, de que todos los tipos deben estar completamente especificados en el momento de la
compilación.
Esto produce dificultades cuando se desea trabajar con arreglos de largo variable. En estos casos suele definirse un espacio igual al mayor largo que se desee manipular; con la
consiguiente mala utilización de memoria para los casos en que el largo sea menor que el
definido. Si el largo variable máximo no es conocido, no podrá usarse esta estructura; y quizá convendría emplear un lenguaje que admitiera arreglos dinámicos.
 Por esta razón los valores máximos de los índices suelen definirse como constantes. Si se
tiene un programa funcionando con una determinada dimensión para un arreglo, y si se desea modificar la dimensión, deberá modificarse la constante que establece la máxima dimensión, y volver a compilar.
Acceso Aleatorio.


En la representación interna, las diversas componentes del arreglo permanecen en memoria
principal; por esta razón se dice que es una estructura de acceso aleatorio. Es decir, el tiempo
necesario para accesar una componente cualquiera es el mismo; también el tiempo para
asignar un valor a cualesquiera de las componentes.

Arreglos en Informatica


Arreglo: Concepto


Principios Basicos


Arreglos



Tipos


Enlaces:
https://developer.mozilla.org/es/docs/Web/JavaScript/Referencia/Objetos_globales/Array
http://www.sc.ehu.es/sbweb/fisica/cursoJava/fundamentos/clases1/arays.htm
https://es.wikipedia.org/wiki/Vector_(inform%C3%A1tica)
http://php.net/manual/es/language.types.array.php
https://www.w3schools.com/js/js_arrays.asp