Algoritmos y Estructura de Datos

Operaciones de Inserción, Eliminación y Búsqueda


Las tablas hash son una estructura de datos muy útil que se utiliza para almacenar y acceder a datos de forma rápida. En C++, se pueden utilizar diferentes clases y métodos para trabajar con tablas hash, como "unordered_map" y "unordered_set".


Inserción: Para insertar un elemento en una tabla hash, se puede utilizar el operador de asignación "=" o el método "insert".


Eliminación: Para eliminar un elemento de una tabla hash, se puede utilizar el método "erase" y proporcionar la clave del elemento a eliminar.


Búsqueda: Para buscar un elemento en una tabla hash, se puede utilizar el método "find" y proporcionar la clave del elemento a buscar. Este método devuelve un iterador al elemento si se encuentra, o "table.end()" si no se encuentra.


A continuacion el codigo para c++ con la operaciones:


                #include 
                #include 

                using namespace std;

                int main() {
                // Creamos una tabla hash
                unordered_map table;

                // Insertamos algunos elementos
                table[1] = 10;
                table[2] = 20;
                table[3] = 30;

                // Mostramos el contenido de la tabla
                cout << "Contenido de la tabla:" << endl;
                for (auto& kv : table) {
                    cout << kv.first << ": " << kv.second << endl;
                }

                // Eliminamos un elemento
                table.erase(2);

                // Mostramos el contenido de la tabla después de la eliminación
                cout << "\nContenido de la tabla después de la eliminación:" << endl;
                for (auto& kv : table) {
                    cout << kv.first << ": " << kv.second << endl;
                }

                // Buscamos un elemento en la tabla
                auto it = table.find(3);
                if (it != table.end()) {
                    cout << "\nSe ha encontrado el elemento con clave 3: " << it->second << endl;
                } else {
                    cout << "\nNo se ha encontrado el elemento con clave 3" << endl;
                }

                return 0;
                }
            

Link de apoyo

  • Tabla HASH-tamaño de la tabla
  • Tablas HASH- Unidad 07
  • Estrucuturas de Datos: tablas hash