ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Seminario de estructura de datos I


Enviado por   •  21 de Agosto de 2022  •  Resumen  •  5.683 Palabras (23 Páginas)  •  75 Visitas

Página 1 de 23

[pic 1]

UNIVERSIDAD DE GUADALAJARA

CUCEI

[pic 2]

Portada

INGENIERO EN INFORMÁTICA

Seminario de estructura de datos I

SECCIÓN D08

CLAVE DE LA MATERIA: I5887       NRC: 59636

NOMBRE DEL ALUMNO: BRYAN NOÉ SERRANO SOLTERO

NOMBRE DEL PROFESOR: OSCAR DIDIER SANCHEZ SANCHEZ

Contenido

Clase C++ (protección de información, encapsulamiento, herencia), (Nombre v, alumno, punto)        3

class Lista (inicializa, vacia, llena, agregar, eliminar)        4

class (busqueda binaria, lineal, burbuja)        12

burbuja mejorado, shell, inserción        15

seleccion, pila        16

Mezcla        17

Quicksort, apuntadores        19

Class Nodo, List_dl        23

imprimir, agregar        24

busqueda, eliminar        25

Clase C++ (protección de información, encapsulamiento, herencia), (Nombre v, alumno, punto)

Una clase es en general un modelo, receta o plantilla que define el estado y comportamiento de cierto tipo de objetos. Una clase puede pensarse como una colección de variables (atributos o propiedades) y funciones (métodos) que permiten representar un conjunto de datos y especificar las operaciones o procedimientos que permiten manipular tales datos. Se puede inclusive entender una clase como un tipo de dato personalizado, similar a las estructuras (structs), donde cada programador define los miembros que va a tener su tipo de dato. De hecho, los tipos de dato nativos de C++ son en realidad clases.

EJEMPLO:

class Empleado {
    private:
        char* m_nombre;
        char* m_departamento;
        char* m_posicion;
        long m_salario;

    public:
        void ImprimirInfo();
        void SetNombre( char* nombre ) { m_nombre = nombre }
        void SetDepartamento( char * departamento) { m_departamento = departamento }
        void SetPosicion ( char* posicion ) { m_posicion = posicion }
        void SetSalario ( long salario ) { m_salario = salario }
        const char* GetNombre( ){ return m_nombre }
        const char* GetDepartamento( ){ return m_departamento }
        const char* GetPosicion( ){ return m_posicion }
        const char* GetSalario( ){ return m_salario }
};

class Lista (inicializa, vacia, llena, agregar, eliminar)

Las listas (Lists) de C++ son secuencias de elementos almacenados en una lista encadenada. Comparadas con los vectores, estas permiten una mayor rapidez de inserción y borrado, pero una menor velocidad de acceso aleatorio. La plantilla list de C++ posee los métodos necesarios para insertar y borrar elementos al inicio, al final o en un punto específico de la lista. En orden de poder usar la plantilla list en nuestros programas debemos incluir la directiva (#include<list>) al inicio del código fuente.

EJEMPLO:

#include <iostream>

#include <stdlib.h>

using namespace std;

 

struct nodo{

       int nro;        

       struct nodo *sgte;

};

typedef struct nodo *Tlista;

void insertarInicio(Tlista &lista, int valor)

{

    Tlista q;

    q = new(struct nodo);

    q->nro = valor;

    q->sgte = lista;

    lista  = q;

}

 

void insertarFinal(Tlista &lista, int valor)

{

    Tlista t, q = new(struct nodo);

    q->nro  = valor;

    q->sgte = NULL;

    if(lista==NULL)

    {

        lista = q;

    }

    else

    {

        t = lista;

        while(t->sgte!=NULL)

        {

            t = t->sgte;

        }

        t->sgte = q;

    }

}

int insertarAntesDespues()

{

    int _op, band;

    cout<<endl;

    cout<<"\t 1. Antes de la posicion           "<<endl;

    cout<<"\t 2. Despues de la posicion         "<<endl;

    cout<<"\n\t Opcion : "; cin>> _op;

    if(_op==1)

        band = -1;

    else

        band = 0;

    return band;

}

void insertarElemento(Tlista &lista, int valor, int pos)

{

    Tlista q, t;

    int i;

    q = new(struct nodo);

    q->nro = valor;

    if(pos==1)

    {

        q->sgte = lista;

        lista = q;

    }

    else

    {

        int x = insertarAntesDespues();

        t = lista;

        for(i=1; t!=NULL; i++)

        {

            if(i==pos+x)

            {

                q->sgte = t->sgte;

                t->sgte = q;

                return;

            }

            t = t->sgte;

        }

    }

    cout<<"   Error...Posicion no encontrada..!"<<endl;

}

void buscarElemento(Tlista lista, int valor)

{

    Tlista q = lista;

    int i = 1, band = 0;

    while(q!=NULL)

    {

        if(q->nro==valor)

        {

            cout<<endl<<" Encontrada en posicion "<< i <<endl;

...

Descargar como (para miembros actualizados) txt (24 Kb) pdf (243 Kb) docx (751 Kb)
Leer 22 páginas más »
Disponible sólo en Clubensayos.com