Lista Ordenada 1.0
Lista Ordenada Compuesta generica
Loading...
Searching...
No Matches
Classes | Public Member Functions | List of all members
ListaOrdenada< T > Class Template Reference

#include <ListaOrdenada.hpp>

Classes

class  FueraRango
 Excepción lanzada cuando se intenta acceder a una posición fuera del rango de la lista. More...
 
class  ListaVacia
 Excepción lanzada cuando se realiza una operación en una lista vacía. More...
 

Public Member Functions

 ListaOrdenada ()
 Constructor por defecto.
 
 ~ListaOrdenada ()
 Destructor.
 
ListaOrdenada< T > & operator= (const ListaOrdenada< T > &Otralista)
 Operador de asignación.
 
 ListaOrdenada (const ListaOrdenada< T > &lc)
 Constructor de copia.
 
void AgregarOrdenado (T valor)
 Agrega un elemento en orden a la lista.
 
void Eliminar (T valor)
 Elimina un elemento de la lista.
 
bool Buscar (T valor) const
 Busca un valor en la lista.
 
bool EstaVacia () const
 Verifica si la lista está vacía.
 
int Tamano () const
 Obtiene el tamaño de la lista.
 
void ImprimirAscendente () const
 Imprime los elementos de la lista en orden ascendente.
 
void ImprimirDescendente () const
 Imprime los elementos de la lista en orden descendente.
 
ListaOrdenada< T > Mezclar (const ListaOrdenada< T > &otraLista)
 Mezcla dos listas ordenadas en una nueva lista ordenada.
 

Detailed Description

template<typename T>
class ListaOrdenada< T >

Permite manipular una lista ordenada, la cual mantiene sus elementos en orden ascendente, con una serie de operaciones como agregar elementos en orden, eliminar elementos, buscar elementos, entre otras.

Esta clase proporciona funcionalidades para mantener los elementos ordenados al agregar nuevos elementos, así como métodos para realizar operaciones comunes en una lista ordenada, como búsqueda, eliminación y mezcla con otras listas ordenadas.

Ejemplo.cpp
#include <iostream>
int main() {
try{
// Agregar elementos a la lista
lista.AgregarOrdenado(5);
lista.AgregarOrdenado(3);
lista.AgregarOrdenado(8);
lista.AgregarOrdenado(1);
lista.AgregarOrdenado(7);
// Imprimir la lista ascendente y descendente
std::cout << "Lista ascendente: ";
std::cout << std::endl;
std::cout << "Lista descendente: ";
std::cout << std::endl;
// Buscar un elemento en la lista
std::cout << "Buscar 3: " << (lista.Buscar(3) ? "Encontrado" : "No encontrado") << std::endl;
std::cout << "Buscar 6: " << (lista.Buscar(6) ? "Encontrado" : "No encontrado") << std::endl;
// Eliminar un elemento de la lista
lista.Eliminar(3);
lista.Eliminar(8);
// Imprimir la lista despu&eacute;s de eliminar elementos
std::cout << "Lista despues de eliminar elementos: ";
std::cout << std::endl;
// Mezclar dos listas
ListaOrdenada<int> otraLista;
otraLista.AgregarOrdenado(2);
otraLista.AgregarOrdenado(6);
otraLista.AgregarOrdenado(4);
ListaOrdenada<int> listaMezclada = lista.Mezclar(otraLista);
// Imprimir la lista mezclada
std::cout << "Lista mezclada: ";
listaMezclada.ImprimirAscendente();
std::cout << std::endl;
} catch (const ListaOrdenada<int>::ListaVacia& e) {
std::cerr << "Error: La lista est&aacute; vac&iacute;a." << std::endl;
} catch (const std::exception& e) {
std::cerr << "Error inesperado: " << e.what() << std::endl;
}
return 0;
}
Implementación de una Lista Ordenada Compuesta.
Excepción lanzada cuando se realiza una operación en una lista vacía.
Definition ListaOrdenada.hpp:113
Definition ListaOrdenada.hpp:95
void ImprimirAscendente() const
Imprime los elementos de la lista en orden ascendente.
void Eliminar(T valor)
Elimina un elemento de la lista.
ListaOrdenada< T > Mezclar(const ListaOrdenada< T > &otraLista)
Mezcla dos listas ordenadas en una nueva lista ordenada.
void ImprimirDescendente() const
Imprime los elementos de la lista en orden descendente.
bool Buscar(T valor) const
Busca un valor en la lista.
void AgregarOrdenado(T valor)
Agrega un elemento en orden a la lista.
Salida:
Lista ascendente: 1, 3, 5, 7, 8,
Lista descendente: 8, 7, 5, 3, 1,
Buscar 3: Encontrado
Buscar 6: No encontrado
Lista despuΘs de eliminar elementos: 1, 5, 7,
Lista mezclada: 1, 2, 4, 5, 6, 7,

Constructor & Destructor Documentation

◆ ListaOrdenada() [1/2]

template<typename T >
ListaOrdenada< T >::ListaOrdenada ( )

Constructor por defecto.

Crea una lista ordenada vacía.

◆ ~ListaOrdenada()

template<typename T >
ListaOrdenada< T >::~ListaOrdenada ( )

Destructor.

Libera la memoria ocupada por la lista.

◆ ListaOrdenada() [2/2]

template<typename T >
ListaOrdenada< T >::ListaOrdenada ( const ListaOrdenada< T > & lc)

Constructor de copia.

Parameters
lcLista a copiar.

Member Function Documentation

◆ AgregarOrdenado()

template<typename T >
void ListaOrdenada< T >::AgregarOrdenado ( T valor)

Agrega un elemento en orden a la lista.

Parameters
valorValor del elemento a agregar.

◆ Buscar()

template<typename T >
bool ListaOrdenada< T >::Buscar ( T valor) const

Busca un valor en la lista.

Parameters
valorValor a buscar.
Returns
true si el valor se encuentra en la lista, false en caso contrario.

◆ Eliminar()

template<typename T >
void ListaOrdenada< T >::Eliminar ( T valor)

Elimina un elemento de la lista.

Parameters
valorValor del elemento a eliminar.
Exceptions
ListaVaciasi la lista está vacía.

◆ EstaVacia()

template<typename T >
bool ListaOrdenada< T >::EstaVacia ( ) const

Verifica si la lista está vacía.

Returns
true si la lista está vacía, false en caso contrario.

◆ Mezclar()

template<typename T >
ListaOrdenada< T > ListaOrdenada< T >::Mezclar ( const ListaOrdenada< T > & otraLista)

Mezcla dos listas ordenadas en una nueva lista ordenada.

Parameters
otraListaLa otra lista a mezclar con esta lista.
Returns
Una nueva lista ordenada que contiene los elementos de ambas listas.

◆ operator=()

template<typename T >
ListaOrdenada< T > & ListaOrdenada< T >::operator= ( const ListaOrdenada< T > & Otralista)

Operador de asignación.

Asigna el contenido de una lista ordenada a otra.

Parameters
OtralistaLista ordenada a asignar.
Returns
Referencia a la lista actual.

◆ Tamano()

template<typename T >
int ListaOrdenada< T >::Tamano ( ) const

Obtiene el tamaño de la lista.

Returns
Número de elementos en la lista.

The documentation for this class was generated from the following file: