Sie sind auf Seite 1von 5

Informacin: En sentido general, la informacin es un conjunto organizado de datos procesados, que constituyen un mensaje que cambia el estado de conocimiento

del sujeto o sistema que recibe dicho mensaje. Dato: El dato es una representacin simblica (numrica, alfabtica, algortmica, entre otros.), un atributo o caracterstica de una entidad. Los datos son hechos que describen sucesos y entidades. No tienen ninguna informacin. Puede significar un nmero, una letra, o cualquier smbolo que representa una palabra, una cantidad, una medida o una descripcin. El dato no tiene valor semntico (sentido) en s mismo, pero si recibe un tratamiento (procesamiento) apropiado, se puede utilizar en la realizacin de clculos o toma de decisiones. Es de empleo muy comn en el mbito informtico y, en general, prcticamente en cualquier disciplina cientfica. En programacin, un dato es la expresin general que describe las caractersticas de las entidades sobre las cuales opera un algoritmo. En Estructura de datos, es la parte mnima de la informacin.

Un dato por s mismo no constituye informacin, es el procesamiento de los datos lo que nos proporciona informacin.
Estructura de Datos En programacin, una estructura de datos es una forma de organizar un conjunto de datos elementales con el objetivo de facilitar su manipulacin. Una estructura de datos define la organizacin e interrelacin de stos y un conjunto de operaciones que se pueden realizar sobre ellos. Las operaciones bsicas son: Alta, adicionar un nuevo valor a la estructura. Baja, borrar un valor de la estructura. Bsqueda, encontrar un determinado valor en la estructura para realizar una operacin con este valor, en forma secuencial o binario (siempre y cuando los datos estn ordenados). Ordenamiento, de los elementos pertenecientes a la estructura. Apareo, dadas dos estructuras originar una nueva ordenada y que contenga a las apareadas.

Otras operaciones que se pueden realizar son:

Cada estructura ofrece ventajas y desventajas en relacin a la simplicidad y eficiencia para la realizacin de cada operacin. De esta forma, la eleccin de la estructura de datos apropiada para cada problema depende de factores como la frecuencia y el orden en que se realiza cada operacin sobre los datos. Arreglo En programacin, una matriz o vector (llamados en ingls arrays) es una zona de almacenamiento continuo, que contiene una serie de elementos del mismo tipo, los elementos de la matriz. Desde el punto de vista lgico una matriz se puede ver como un conjunto de elementos ordenados en fila (o filas y columnas si tuviera dos dimensiones).

Operaciones Con Arreglos Las operaciones en arreglos pueden clasificarse de la siguiente forma: Lectura Escritura

Asignacin Actualizacin Ordenacin Bsqueda

a) LECTURA Este proceso consiste en leer un dato de un arreglo y asignar un valor a cada uno de sus componentes. La lectura se realiza de la siguiente manera: para i desde 1 hasta N haz x<--arreglo[i] b) ESCRITURA Consiste en asignarle un valor a cada elemento del arreglo. La escritura se realiza de la siguiente manera: para i desde 1 hasta N haz arreglo[i]<--x c) ASIGNACION No es posible asignar directamente un valor a todo el arreglo, por lo que se realiza de la manera siguiente: para i desde 1 hasta N haz arreglo[i]<--algn_valor d) ACTUALIZACION Dentro de esta operacin se encuentran las operaciones de eliminar, insertar y modificar datos. Para realizar este tipo de operaciones se debe tomar en cuenta si el arreglo est o no ordenado. Para arreglos ordenados los algoritmos de insercin, borrado y modificacin son los siguientes: 1.- Insertar. Si i< mensaje(arreglo contrario caso En arreglo[i]<--valor i<--i+1 entonces> 2.- Borrar. Si N>=1 entonces inicio i<--1 encontrado<--falso mientras i<=n y encontrado=falso inicio si arreglo[i]=valor_a_borrar entonces inicio encontrado<--verdadero N<--N-1 para k desde i hasta N haz arreglo[k]<--arreglo[k-1] fin en caso contrario i<--i+1 fin fin Si encontrado=falso entonces mensaje (valor no encontrado) 3.- Modificar. Si N>=1 entonces inicio i<--1 encontrado<--falso mientras i<=N y encontrado=false haz inicio Si arreglo[i]=valor entonces arreglo[i]<--valor_nuevo encontrado<--verdadero En caso contrario i<--i+1 fin fin

Declaracin de un arreglo: Se le da un nombre y se de fine su tamao y el tipo de datos que va a contener (caracteres, enteros, reales, etc.) En C: int arreglo[10]; /* un arreglo de 10 enteros */ float arreglo[10]; /* un arreglo de 1 0 reales */ char arreglo[10]; /* un arreglo de 10 caracteres */ Altas, Bajas y Cambios Alta en un arreglo: Se verifica que haya espacio y se inserta el elemento en la posicin disponible. Si el arreglo tiene un orden determinado hay que buscar la posicin correcta primero, luego recorrer los elementos para generar un espacio y finalmente se inserta el dato. Alta en un arreglo (secuencial)
/* dato es el elemento a dar de alta y pos indica la posicin disponible */ alta(int arr[], int dato, int *pos) { if(*pos == MAX) /* Verifica si esta lleno */ printf("Error: el arreglo esta lleno"); else { arr[*pos] = dato; /* Inserta el dato */ *pos++; /* Incrementa la posicin */ } }

Alta en un arreglo (ordenado)


/* dato es el elemento a dar de alta y cantidad indica el nmero de datos existentes. Este procedimiento inserta un dato en un arreglo de enteros en orden ascendente */ alta_ordenada(int arr[], int dato, int *cantidad) { int i, pos; if(*cantidad == MAX) /* Verifica si esta lleno */ printf("Error: el arreglo esta lleno"); else { if(*cantidad == 0) /* El arreglo esta vaco */ { arr[0] = dato; /* Inserta el dato */ *cantidad++; /* Incrementa la cantidad */ } else { pos = 0; for(i=0; i<MAX; i++) /* Busca la posicin */ if(dato >= arr[i]) pos = ++; if(pos == *cantidad) /* Es el ltimo */ arr[pos] = dato; /* Inserta el dato */ else { /* Recorre los datos para hacer espacio para el nuevo*/ for(i=cantidad; i>=pos; i--) arr[i] = arr[i-1];

arr[pos] = dato; /* Inserta el dato */ *cantidad++;/* Incrementa cantidad */ } } } }

Baja en un arreglo Para eliminar un elemento de un arreglo primero se verifica que no est vaco el arreglo, luego se busca el dato, se elimina y, de ser necesario, se recorren los dems para cubrir el espacio que qued.
baja(int arr[], int dato, int *cantidad) { int i, pos; if(*cantidad == 0) /* Verifica si hay datos */ printf("Error: el arreglo esta vaco"); else { pos = -1; /* Recorre el arreglo buscando dato */ for(i=0; i<cant;i++) if(arr[i] == dato) /* Si lo encontr */ pos = i; if(pos == -1) /* No lo encontr */ printf("Error: No se encontr el dato %d", dato); else { /* Recorre los datos eliminando el que se encontraba en pos*/ for(i=pos; i<*cantidad-1; i++) arr[i] = arr[i+1]; *cantidad--; /* Decrementa cantidad */ } } }

Cambio Para modificar un elemento de un arreglo primero se verifica que no est vaco el arreglo, luego se busca el dato, y se modifica.
cambio(int arr[], int dato, int cantidad, int nuevo) { int i, pos; if(cantidad == 0) /* Verifica si hay datos */ printf("Error: el arreglo esta vaco"); else { pos = -1; for(i=0; i<MAX;i++) /* Recorre el arreglo buscando dato */ if(arr[i] == dato) /* Si lo encontr */ pos = i; if(pos == -1) /* No lo encontr */ printf("Error: No se encontr el dato %d", dato); else arr[pos] = nuevo; }

Registro
En informtica, o concretamente en el contexto de una base de datos relacional, un registro (tambin llamado fila o tupla) representa un objeto nico de datos implcitamente estructurados en una tabla. En trminos simples, una tabla de una base de datos puede imaginarse formada de filas y columnas o campos. Cada fila de una tabla representa un conjunto de datos relacionados, y todas las filas de la misma tabla tienen la misma estructura.

Un registro es un conjunto de campos que contienen los datos que pertenecen a una misma repeticin de entidad. Se le asigna automticamente un nmero consecutivo (nmero de registro) que en ocasiones es usado como ndice aunque lo normal y prctico es asignarle a cada registro un campo clave para su bsqueda. La estructura implcita de un registro y el significado de los valores de sus campos exige que dicho registro sea entendido como una sucesin de datos, uno en cada columna de la tabla. La fila se interpreta entonces como una variable relacional compuesta por un conjunto de tuplas, cada una de las cuales consta de dos tems: el nombre de la columna relevante y el valor que esta fila provee para dicha columna. Cada columna espera un valor de un tipo concreto.. Un registro, en programacin, es un tipo de dato estructurado formado por la unin de varios elementos bajo una misma estructura. Estos elementos pueden ser, o bien datos elementales (entero, real, carcter,...), o bien otras estructuras de datos. A cada uno de esos elementos se le llama campo. Un registro se diferencia de un vector en que ste es una coleccin de datos iguales, es decir, todos del mismo tipo, mientras que en una estructura los elementos que la componen, aunque podran serlo, no tiene porque ser del mismo tipo.

Ejemplo: Creacin de un registro (o estructura) en C Un ejemplo de como se declarara un registro en C podra ser:
typedef struct TipoNodo { int dato; struct TipoNodo *sig; struct TipoNodo *ant; } TNodo;

En este ejemplo se define el tipo de dato TNodo (o struct TipoNodo, sera equivalente) como una estructura (registro) que contiene un dato de tipo entero y dos punteros sig y ant (siguiente y anterior) que sirven para referenciar a otros registros del tipo TNodo. sta es la estructura de datos que se suele utilizar como nodo en las listas doblemente enlazadas.

Registro en bases de datos El concepto de registro que se acaba de presentar es muy similar al concepto de registro en bases de datos, este segundo se refiere a una coleccin de datos que hacen referencia a un mismo tem que se van a guardar en una fila de una tabla de la base de datos