Capítulo 3: Contenedores de Datos Elementales
Ejercicios Prácticos: Capítulo 3
Ejercicio 1
Crea una lista en Python de los primeros diez números primos y luego usa la división para obtener los números primos del 3 al 7 de la lista.
Solución:
primes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
subset_primes = primes[2:7]
print(subset_primes) # Output: [5, 7, 11, 13, 17]
Ejercicio 2
Crea un conjunto de vocales y luego determina si las letras 'a' y 'b' están en el conjunto.
Solución:
vowels = {'a', 'e', 'i', 'o', 'u'}
print('a' in vowels) # Output: True
print('b' in vowels) # Output: False
Ejercicio 3
Define un diccionario que almacene el número atómico (como clave) y el símbolo (como valor) para los elementos Hidrógeno, Helio y Carbono. Obtiene el símbolo del Helio.
Solución:
elements = {
1: 'H', # Hydrogen
2: 'He', # Helium
6: 'C' # Carbon
}
print(elements[2]) # Output: He
Ejercicio 4
Crea una clase básica Rectángulo
que tenga atributos para altura
y ancho
y un método para calcular el área.
Solución:
class Rectangle:
def __init__(self, height, width):
self.height = height
self.width = width
def area(self):
return self.height * self.width
# Example Usage:
rect = Rectangle(5, 10)
print(rect.area()) # Output: 50
Ejercicio 5
Implementa una pila simple usando listas de Python. La pila debe tener métodos para empujar, sacar y verificar si la pila está vacía.
Solución:
class Stack:
def __init__(self):
self.items = []
def push(self, item):
self.items.append(item)
def pop(self):
if not self.is_empty():
return self.items.pop()
def is_empty(self):
return len(self.items) == 0
# Example Usage:
stack = Stack()
stack.push(5)
stack.push(10)
print(stack.pop()) # Output: 10
print(stack.is_empty()) # Output: False
Ejercicio 6
Crea una lista enlazada simple con nodos que almacenan enteros. Implementa un método para agregar un nuevo nodo al final de la lista.
Solución:
class Node:
def __init__(self, data):
self.data = data
self.next = None
class LinkedList:
def __init__(self):
self.head = None
def append(self, data):
new_node = Node(data)
if not self.head:
self.head = new_node
return
last_node = self.head
while last_node.next:
last_node = last_node.next
last_node.next = new_node
# Example Usage:
ll = LinkedList()
ll.append(5)
ll.append(10)
Estos ejercicios están diseñados para reforzar los conceptos discutidos en el Capítulo 3 y proporcionar experiencia práctica con las estructuras de datos integradas de Python, los principios de orientación a objetos y algunas estructuras de datos elementales.
Ejercicios Prácticos: Capítulo 3
Ejercicio 1
Crea una lista en Python de los primeros diez números primos y luego usa la división para obtener los números primos del 3 al 7 de la lista.
Solución:
primes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
subset_primes = primes[2:7]
print(subset_primes) # Output: [5, 7, 11, 13, 17]
Ejercicio 2
Crea un conjunto de vocales y luego determina si las letras 'a' y 'b' están en el conjunto.
Solución:
vowels = {'a', 'e', 'i', 'o', 'u'}
print('a' in vowels) # Output: True
print('b' in vowels) # Output: False
Ejercicio 3
Define un diccionario que almacene el número atómico (como clave) y el símbolo (como valor) para los elementos Hidrógeno, Helio y Carbono. Obtiene el símbolo del Helio.
Solución:
elements = {
1: 'H', # Hydrogen
2: 'He', # Helium
6: 'C' # Carbon
}
print(elements[2]) # Output: He
Ejercicio 4
Crea una clase básica Rectángulo
que tenga atributos para altura
y ancho
y un método para calcular el área.
Solución:
class Rectangle:
def __init__(self, height, width):
self.height = height
self.width = width
def area(self):
return self.height * self.width
# Example Usage:
rect = Rectangle(5, 10)
print(rect.area()) # Output: 50
Ejercicio 5
Implementa una pila simple usando listas de Python. La pila debe tener métodos para empujar, sacar y verificar si la pila está vacía.
Solución:
class Stack:
def __init__(self):
self.items = []
def push(self, item):
self.items.append(item)
def pop(self):
if not self.is_empty():
return self.items.pop()
def is_empty(self):
return len(self.items) == 0
# Example Usage:
stack = Stack()
stack.push(5)
stack.push(10)
print(stack.pop()) # Output: 10
print(stack.is_empty()) # Output: False
Ejercicio 6
Crea una lista enlazada simple con nodos que almacenan enteros. Implementa un método para agregar un nuevo nodo al final de la lista.
Solución:
class Node:
def __init__(self, data):
self.data = data
self.next = None
class LinkedList:
def __init__(self):
self.head = None
def append(self, data):
new_node = Node(data)
if not self.head:
self.head = new_node
return
last_node = self.head
while last_node.next:
last_node = last_node.next
last_node.next = new_node
# Example Usage:
ll = LinkedList()
ll.append(5)
ll.append(10)
Estos ejercicios están diseñados para reforzar los conceptos discutidos en el Capítulo 3 y proporcionar experiencia práctica con las estructuras de datos integradas de Python, los principios de orientación a objetos y algunas estructuras de datos elementales.
Ejercicios Prácticos: Capítulo 3
Ejercicio 1
Crea una lista en Python de los primeros diez números primos y luego usa la división para obtener los números primos del 3 al 7 de la lista.
Solución:
primes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
subset_primes = primes[2:7]
print(subset_primes) # Output: [5, 7, 11, 13, 17]
Ejercicio 2
Crea un conjunto de vocales y luego determina si las letras 'a' y 'b' están en el conjunto.
Solución:
vowels = {'a', 'e', 'i', 'o', 'u'}
print('a' in vowels) # Output: True
print('b' in vowels) # Output: False
Ejercicio 3
Define un diccionario que almacene el número atómico (como clave) y el símbolo (como valor) para los elementos Hidrógeno, Helio y Carbono. Obtiene el símbolo del Helio.
Solución:
elements = {
1: 'H', # Hydrogen
2: 'He', # Helium
6: 'C' # Carbon
}
print(elements[2]) # Output: He
Ejercicio 4
Crea una clase básica Rectángulo
que tenga atributos para altura
y ancho
y un método para calcular el área.
Solución:
class Rectangle:
def __init__(self, height, width):
self.height = height
self.width = width
def area(self):
return self.height * self.width
# Example Usage:
rect = Rectangle(5, 10)
print(rect.area()) # Output: 50
Ejercicio 5
Implementa una pila simple usando listas de Python. La pila debe tener métodos para empujar, sacar y verificar si la pila está vacía.
Solución:
class Stack:
def __init__(self):
self.items = []
def push(self, item):
self.items.append(item)
def pop(self):
if not self.is_empty():
return self.items.pop()
def is_empty(self):
return len(self.items) == 0
# Example Usage:
stack = Stack()
stack.push(5)
stack.push(10)
print(stack.pop()) # Output: 10
print(stack.is_empty()) # Output: False
Ejercicio 6
Crea una lista enlazada simple con nodos que almacenan enteros. Implementa un método para agregar un nuevo nodo al final de la lista.
Solución:
class Node:
def __init__(self, data):
self.data = data
self.next = None
class LinkedList:
def __init__(self):
self.head = None
def append(self, data):
new_node = Node(data)
if not self.head:
self.head = new_node
return
last_node = self.head
while last_node.next:
last_node = last_node.next
last_node.next = new_node
# Example Usage:
ll = LinkedList()
ll.append(5)
ll.append(10)
Estos ejercicios están diseñados para reforzar los conceptos discutidos en el Capítulo 3 y proporcionar experiencia práctica con las estructuras de datos integradas de Python, los principios de orientación a objetos y algunas estructuras de datos elementales.
Ejercicios Prácticos: Capítulo 3
Ejercicio 1
Crea una lista en Python de los primeros diez números primos y luego usa la división para obtener los números primos del 3 al 7 de la lista.
Solución:
primes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29]
subset_primes = primes[2:7]
print(subset_primes) # Output: [5, 7, 11, 13, 17]
Ejercicio 2
Crea un conjunto de vocales y luego determina si las letras 'a' y 'b' están en el conjunto.
Solución:
vowels = {'a', 'e', 'i', 'o', 'u'}
print('a' in vowels) # Output: True
print('b' in vowels) # Output: False
Ejercicio 3
Define un diccionario que almacene el número atómico (como clave) y el símbolo (como valor) para los elementos Hidrógeno, Helio y Carbono. Obtiene el símbolo del Helio.
Solución:
elements = {
1: 'H', # Hydrogen
2: 'He', # Helium
6: 'C' # Carbon
}
print(elements[2]) # Output: He
Ejercicio 4
Crea una clase básica Rectángulo
que tenga atributos para altura
y ancho
y un método para calcular el área.
Solución:
class Rectangle:
def __init__(self, height, width):
self.height = height
self.width = width
def area(self):
return self.height * self.width
# Example Usage:
rect = Rectangle(5, 10)
print(rect.area()) # Output: 50
Ejercicio 5
Implementa una pila simple usando listas de Python. La pila debe tener métodos para empujar, sacar y verificar si la pila está vacía.
Solución:
class Stack:
def __init__(self):
self.items = []
def push(self, item):
self.items.append(item)
def pop(self):
if not self.is_empty():
return self.items.pop()
def is_empty(self):
return len(self.items) == 0
# Example Usage:
stack = Stack()
stack.push(5)
stack.push(10)
print(stack.pop()) # Output: 10
print(stack.is_empty()) # Output: False
Ejercicio 6
Crea una lista enlazada simple con nodos que almacenan enteros. Implementa un método para agregar un nuevo nodo al final de la lista.
Solución:
class Node:
def __init__(self, data):
self.data = data
self.next = None
class LinkedList:
def __init__(self):
self.head = None
def append(self, data):
new_node = Node(data)
if not self.head:
self.head = new_node
return
last_node = self.head
while last_node.next:
last_node = last_node.next
last_node.next = new_node
# Example Usage:
ll = LinkedList()
ll.append(5)
ll.append(10)
Estos ejercicios están diseñados para reforzar los conceptos discutidos en el Capítulo 3 y proporcionar experiencia práctica con las estructuras de datos integradas de Python, los principios de orientación a objetos y algunas estructuras de datos elementales.