Set - Conjunto

El conjunto (set) es una estructura de datos que permite almacenar elementos únicos sin un orden específico. Esta estructura de datos es muy útil para almacenar elementos únicos y realizar operaciones de conjuntos como unión, intersección, diferencia y diferencia simétrica.

Como usar la documentación

Para leer la guía de uso de la documentación, por favor diríjase a la sección Guía de documentación.

set.py

new_set()

Crea un conjunto (set) vacio el cuál permite almacenar elementos únicos sin un orden específico.

El conjunto (set) es creado con los siguientes atributos inicializados:

  • size: Tamaño del conjunto, inicializado en 0.

  • elements: Lista de elementos del conjunto. Inicializada como array vacio.

returns:

Conjuto vacío creado recien inicializado

rtype:

set

Example:
# App/logic.py
from DataStructures import Set as set

# Crear un conjunto vacío
my_set = set.new_set()
print(my_set) # Salida esperada: {'size': 0, 'elements': []}
Test Scenarios:
  • Inicialización de datos únicos: Se inicializa un conjunto vacío con un tamaño de 0 y una lista de elementos vacía. Resultado esperado:

    {
       "size": 0,
       "elements": []
    }
    
add_element(my_set, element)

Añade un elemento no existente al conjunto.

Si el elemento ya existe en el conjunto, no se añadirá. De lo contrario, se añadirá al conjunto (se inserta al array) y se incrementará el tamaño del conjunto.

Parameters:
  • my_set (set) – Conjunto al que se le añadirá un elemento.

  • element (any) – Elemento que se añadirá al conjunto.

Returns:

Conjunto con el elemento añadido.

Return type:

set

Example:
# App/logic.py
from DataStructures import Set as set

# Crear un conjunto vacío
my_set = set.new_set()

# Añadir un elemento al conjunto
my_set = set.add_element(my_set, 1)
print(my_set) # Salida esperada: {'size': 1, 'elements': [1]}
Test Scenarios:
  • Añadir un elemento al conjunto vacio: Se añade un elemento al conjunto vacio. Resultado esperado:

    {
       "size": 1,
       "elements": [1]
    }
    
  • Añadir un elemento existente en el conjunto: Se añade un elemento al conjunto que ya existe. Resultado esperado:

    # App/logic.py
    from DataStructures import Set as set
    
    # Crear un conjunto vacío
    my_set = set.new_set()
    
    # Añadir un elemento al conjunto
    my_set = set.add_element(my_set, 1)
    
    # Añadir un elemento existente al conjunto
    my_set = set.add_element(my_set, 1)
    print(my_set) # Salida esperada: {'size': 1, 'elements': [1]}
    
  • Añadir varios elementos al conjunto: Se añaden varios elementos que no estaban en el conjunto. Resultado esperado:

    # App/logic.py
    from DataStructures import Set as set
    
    # Crear un conjunto vacío
    my_set = set.new_set()
    
    # Añadir varios elementos al conjunto
    my_set = set.add_element(my_set, 1)
    my_set = set.add_element(my_set, 2)
    my_set = set.add_element(my_set, 3)
    print(my_set) # Salida esperada: {'size': 3, 'elements': [1, 2, 3]}
    
remove_element(my_set, element)

Elimina un elemento del conjunto.

Si el elemento no existe en el conjunto, no se eliminará. De lo contrario, se eliminará del conjunto (se elimina del array) y se decrementará el tamaño del conjunto.

Parameters:
  • my_set (set) – Conjunto al que se le eliminará un elemento.

  • element (any) – Elemento que se eliminará del conjunto.

Returns:

Conjunto con el elemento eliminado.

Return type:

set

Example:
# App/logic.py
from DataStructures import Set as set

# Crear un conjunto vacío
my_set = set.new_set()

# Añadir un elemento al conjunto
my_set = set.add_element(my_set, 1)

# Eliminar un elemento del conjunto
my_set = set.remove_element(my_set, 1)
print(my_set) # Salida esperada: {'size': 0, 'elements': []}
Test Scenarios:
  • Eliminar un elemento del conjunto vacio: Se elimina un elemento de un conjunto vacio. Resultado esperado:

    {
       "size": 0,
       "elements": []
    }
    
  • Eliminar un elemento que no existe en el conjunto: Se elimina un elemento del conjunto que no existe. Resultado esperado:

    # App/logic.py
    from DataStructures import Set as set
    
    # Crear un conjunto vacío
    my_set = set.new_set()
    
    # Eliminar un elemento del conjunto
    my_set = set.remove_element(my_set, 1)
    print(my_set) # Salida esperada: {'size': 0, 'elements': []}
    
  • Eliminar varios elementos del conjunto: Se eliminan varios elementos del conjunto. Resultado esperado:

    # App/logic.py
    from DataStructures import Set as set
    
    # Crear un conjunto vacío
    my_set = set.new_set()
    
    # Añadir varios elementos al conjunto
    my_set = set.add_element(my_set, 1)
    my_set = set.add_element(my_set, 2)
    my_set = set.add_element(my_set, 3)
    
    # Eliminar varios elementos del conjunto
    my_set = set.remove_element(my_set, 1)
    my_set = set.remove_element(my_set, 2)
    
    print(my_set) # Salida esperada: {'size': 1, 'elements': [3]}
    
load_set(my_set, filename)

Carga elementos en un conjunto a partir de un archivo CSV.

Cada línea del archivo se considera un elemento único que se añadirá al conjunto como un diccionario donde la clave es el nombre de la columna y el valor es el valor de la celda.

Parameters:
  • my_set (set) – Conjunto al que se le añadirán los elementos del archivo.

  • filename (str) – Nombre del archivo que contiene los elementos a cargar.

Returns:

Conjunto con los elementos cargados.

Return type:

set

Example:
# App/logic.py
from DataStructures import Set as set

# Crear un conjunto vacío
my_set = set.new_set()

# Cargar elementos desde un archivo
my_set = set.load_set(my_set, 'elements.csv')
print(my_set) # Salida esperada: {'size': 3, 'elements': [{'name': 'John', 'age': 25}, {'name': 'Jane', 'age': 30}, {'name': 'Alice', 'age': 35}]}
Test Scenarios:
  • Cargar elementos desde un archivo vacio: Se carga un archivo vacio en un conjunto vacio. Resultado esperado:

    {
       "size": 0,
       "elements": []
    }
    
  • Cargar elementos desde un archivo con datos: Se carga un archivo con datos en un conjunto vacio. Resultado esperado:

    # App/logic.py
    from DataStructures import Set as set
    
    # Crear un conjunto vacío
    my_set = set.new_set()
    
    # Cargar elementos desde un archivo
    my_set = set.load_set(my_set, 'elements.csv')
    print(my_set) # Salida esperada: {'size': 3, 'elements': [{'name': 'John', 'age': 25}, {'name': 'Jane', 'age': 30}, {'name': 'Alice', 'age': 35}]}
    
size(my_set)

Obtiene la cantidad de elementos en un conjunto.

Parameters:

my_set (set) – Conjunto del que se obtendrá el tamaño.

Returns:

Tamaño del conjunto.

Return type:

int

Example:
# App/logic.py
from DataStructures import Set as set

# Crear un conjunto vacío
my_set = set.new_set()

# Añadir varios elementos al conjunto
my_set = set.add_element(my_set, 1)
my_set = set.add_element(my_set, 2)
my_set = set.add_element(my_set, 3)

# Obtener el tamaño del conjunto
size = set.size(my_set)
print(size) # Salida esperada: 3
Test Scenarios:
  • Obtener el tamaño de un conjunto vacio: Se obtiene el tamaño de un conjunto vacio. Resultado esperado: 0

  • Obtener el tamaño de un conjunto con elementos: Se obtiene el tamaño de un conjunto con elementos. Resultado esperado: 3

is_empty(my_set)

Verifica si un conjunto está vacio.

Parameters:

my_set (set) – Conjunto que se verificará si está vacio.

Returns:

Verdadero si el conjunto está vacio, de lo contrario falso.

Return type:

bool

Example:
# App/logic.py
from DataStructures import Set as set

# Crear un conjunto vacío
my_set = set.new_set()

# Verificar si el conjunto está vacio
is_empty = set.is_empty(my_set)
print(is_empty) # Salida esperada: True
Test Scenarios:
  • Verificar si un conjunto vacio está vacio: Se verifica si un conjunto vacio está vacio. Resultado esperado: True

  • Verificar si un conjunto con elementos está vacio: Se verifica si un conjunto con elementos está vacio. Resultado esperado: False