presione clip para ver el codigo
Click para ver prueba de escritorio
https://pythontutor.com/render.html#code=class%20Nodo%3A%0A%20%20%20%20def%20__init__%28self,%20valor%29%3A%0A%20%20%20%20%20%20%20%20self.valor%20%3D%20valor%0A%20%20%20%20%20%20%20%20self.siguiente%20%3D%20None%0A%0Aclass%20ListaSimplementeLigada%3A%0A%20%20%20%20def%20__init__%28self%29%3A%0A%20%20%20%20%20%20%20%20self.cabeza%20%3D%20None%0A%0A%20%20%20%20def%20agregar%28self,%20valor%29%3A%0A%20%20%20%20%20%20%20%20nuevo_nodo%20%3D%20Nodo%28valor%29%0A%20%20%20%20%20%20%20%20if%20self.cabeza%20is%20None%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20self.cabeza%20%3D%20nuevo_nodo%0A%20%20%20%20%20%20%20%20else%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20nodo_actual%20%3D%20self.cabeza%0A%20%20%20%20%20%20%20%20%20%20%20%20while%20nodo_actual.siguiente%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20nodo_actual%20%3D%20nodo_actual.siguiente%0A%20%20%20%20%20%20%20%20%20%20%20%20nodo_actual.siguiente%20%3D%20nuevo_nodo%0A%0A%20%20%20%20def%20encontrar_maximo%28self%29%3A%0A%20%20%20%20%20%20%20%20if%20self.cabeza%20is%20None%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20None%20%20%23%20La%20lista%20est%C3%A1%20vac%C3%ADa%0A%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20maximo%20%3D%20self.cabeza.valor%0A%20%20%20%20%20%20%20%20nodo_actual%20%3D%20self.cabeza%0A%20%20%20%20%20%20%20%20while%20nodo_actual%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20if%20nodo_actual.valor%20%3E%20maximo%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20%20maximo%20%3D%20nodo_actual.valor%0A%20%20%20%20%20%20%20%20%20%20%20%20nodo_actual%20%3D%20nodo_actual.siguiente%0A%20%20%20%20%20%20%20%20return%20maximo%0A%20%20%20%20%20%20%20%20%0A%20%20%20%20def%20calcular_promedio%28self%29%3A%0A%20%20%20%20%20%20%20%20if%20self.cabeza%20is%20None%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20None%20%20%23%20La%20lista%20est%C3%A1%20vac%C3%ADa%0A%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20suma%20%3D%200%0A%20%20%20%20%20%20%20%20conteo%20%3D%200%0A%20%20%20%20%20%20%20%20actual%20%3D%20self.cabeza%0A%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20while%20actual%20is%20not%20None%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20suma%20%2B%3D%20actual.valor%0A%20%20%20%20%20%20%20%20%20%20%20%20conteo%20%2B%3D%201%0A%20%20%20%20%20%20%20%20%20%20%20%20actual%20%3D%20actual.siguiente%0A%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20if%20conteo%20%3D%3D%200%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20return%20None%20%20%23%20Para%20evitar%20la%20divisi%C3%B3n%20por%20cero%0A%20%20%20%20%20%20%20%20%0A%20%20%20%20%20%20%20%20promedio%20%3D%20suma%20/%20conteo%0A%20%20%20%20%20%20%20%20return%20promedio%0A%0A%20%20%20%20%0A%20%20%20%20def%20imprimir_lista%28self%29%3A%0A%20%20%20%20%20%20%20%20actual%20%3D%20self.cabeza%0A%20%20%20%20%20%20%20%20while%20actual%3A%0A%20%20%20%20%20%20%20%20%20%20%20%20print%28actual.valor,%20end%3D'%20-%3E%20'%29%0A%20%20%20%20%20%20%20%20%20%20%20%20actual%20%3D%20actual.siguiente%0A%20%20%20%20%20%20%20%20print%28'None'%29%0A%0A%23%20Ejemplo%20de%20uso%0Alista%20%3D%20ListaSimplementeLigada%28%29%0Alista.agregar%2825%29%0Alista.agregar%2843%29%0Alista.agregar%2820%29%0Alista.agregar%2827%29%0Alista.agregar%2830%29%0A%0Amaximo%20%3D%20lista.encontrar_maximo%28%29%0Aprint%28f%22El%20valor%20m%C3%A1ximo%20en%20la%20lista%20es%3A%20%7Bmaximo%7D%22%29%0A%0Apromedio%20%3D%20lista.calcular_promedio%28%29%0Aprint%28f%22el%20promedio%20de%20los%20numeros%20de%20la%20lista%20es%20%3A%20%7Bpromedio%7D%22%29&cumulative=false&heapPrimitives=nevernest&mode=edit&origin=opt-frontend.js&py=311&rawInputLstJSON=%5B%5D&textReferences=false
Puedes personalizar tus preferencias de cookies aquí. Habilita o deshabilita las siguientes categorías y guarda tu selección.