Racionalizacion administrativa
ESTRUCTURA EN C++
CURSO:
Informática II
FACULTAD:
Ing. De Sistemas
CICLO: II
TURNO: Mañana
DOCENTE:
Piero Valdivieso Arenas
ALUMNO:
Eyser Jesus Fuchs Flores
PUCALLPA-PERU
2012
INDICE:
ESTRUCTURA DE DATOS EN C++
1.- ESTRUCTURA FOR:
2.- ESTRUCTURAWHILE:
2.1 Sintaxis
2.2 Condición
2.2.1 Sentencias Comparativas
2.2.2 Particularidades de lenguajes
Ejemplo (usando sintaxis de C)
Ejemplo (usando el lenguaje Lexico)
3.- ESTRUCTURA DE LISTAS:
1 Historia
2 Tipos de Listas Enlazadas
2.1 Listas enlazadas lineales
2.1.1 Listas simples enlazadas
2.1.2 Lista Doblemente Enlazada
2.2 Listas enlazadas circulares
2.2.1 Listasenlazadas circulares simples
2.2.2 Lista Enlazada Doblemente Circular
2.3 Nodos Centinelas
3 Aplicaciones de las listas enlazadas
4 Ventajas
4.1 Listas Enlazadas vs. Vectores o Matrices
4.2 Doblemente Enlazadas vs. Simples Enlazadas
4.3 Circulares Enlazadas vs. Lineales Enlazadas
4.4 Nodos Centinelas (header nodes)
5 Listas enlazadas usando vectores de Nodos
6 Lenguajes soportados7 Almacenamiento interno y externo
8 Agilización de la búsqueda
9 Estructuras de datos relacionadas
10 Implementaciones
10.1 Operaciones sobre listas enlazadas
10.1.1 Listas Enlazadas Lineales
10.1.1.1 Listas Simples Enlazadas
10.1.1.2 Listas Doblemente Enlazadas
10.1.2 Listas Enlazadas Circulares
10.1.2.1 Listas Enlazadas Doblemente Circulares
10.2 Listas enlazadas usando vectores de nodos10.3 Implementación de una lista enlazada en C
10.4 Implementación de una lista enlazada en Maude
10.5 Ejemplos de almacenamiento interno y externo
4.- ESTRUCTURA DE ARRAY:
1 Arrays y cadenas de texto
2 Indices de un array
3 Dimensiones de un array
3.1 Array unidimensional
3.2 Array bidimensional
4 Declaración de arrays en C, C++
4.1 Iteraciones dentro de un array (vector)4.2 Iteraciones dentro de un array (matriz)
5 Cadenas de caracteres
5.1 La biblioteca string
6 Cadenas en C++
7 Arrays en C++
5.- Estructura Struc
1.- ESTRUCTURA FOR
La estructura for sirve para repetir un código dependiendo de un contador. Veamos un ejemplo:
int contador;
for (contador = 1; contadornext;
free(n);
}
}
node **list_search(node**n, int i) {
while (*n != NULL) {
if ((*n)->data == i) {
return n;
}
n = &(*n)->next;
}
return NULL;
}
void list_print(node *n) {
if (n == NULL) {
printf("lista esta vacía\n");
}
while (n != NULL) {
printf("print %p %p %d\n", n, n->next, n->data);
n = n->next;
}
}
int main(void) {node *n = NULL;
list_add(&n, 0); /* lista: 0 */
list_add(&n, 1); /* lista: 1 0 */
list_add(&n, 2); /* lista: 2 1 0 */
list_add(&n, 3); /* lista: 3 2 1 0 */
list_add(&n, 4); /* lista: 4 3 2 1 0 */
list_print(n);
list_remove(&n); /* borrar primero(4) */
list_remove(&n->next); /* borrar nuevo segundo (2) */
list_remove(list_search(&n,1)); /* eliminar la celda que contiene el 1 (primera) */
list_remove(&n->next); /* eliminar segundo nodo del final(0)*/
list_remove(&n); /* eliminar ultimo nodo (3) */
list_print(n);
return 0;
}
Implementación de una lista enlazada en Maude
fmod LISTA-GENERICA {X :: TRIV} is
protecting NAT .
*** tipos
sorts ListaGenNV{X} ListaGen{X} .
subsortListaGenNV{X} < ListaGen{X} .
*** generadores
op crear : -> ListaGen{X} [ctor] .
op cons : X$Elt ListaGen{X} -> ListaGenNV{X} [ctor] .
*** constructores
op _::_ : ListaGen{X} ListaGen{X} -> ListaGen{X} [assoc id: crear ] . *** concatenacion
op invertir : ListaGen{X} -> ListaGen{X} .
op resto : ListaGenNV{X} -> ListaGen{X} .
*** selectores
op primero : ListaGenNV{X} -> X$Elt .
op...
Regístrate para leer el documento completo.