Articles of recursión

Desafío de recursión de Python

Actualmente estoy en una introducción a Python y clase de teoría computacional, y recientemente hubo una pregunta difícil sobre el examen que simplemente no pude resolver. Implica escribir código para un progtwig que agrega números. Creo que se supone que la pregunta usa recursión. No recuerdo cómo se redactó exactamente la pregunta, pero aquí está […]

Decorador Python para cronometrar funciones recursivas.

Tengo un decorador simple para rastrear el tiempo de ejecución de una llamada de función: def timed(f): def caller(*args): start = time.time() res = f(*args) end = time.time() return res, end – start return caller Esto se puede usar de la siguiente manera, y devuelve una tupla del resultado de la función y el tiempo […]

¿Getattr y setattr en objetos nesteds?

Este es probablemente un problema simple, así que espero que sea fácil para alguien señalar mi error o si esto es posible. Tengo un objeto que tiene múltiples objetos como propiedades. Quiero poder establecer dinámicamente las propiedades de estos objetos así: class Person(object): def __init__(self): self.pet = Pet() self.residence = Residence() class Pet(object): def __init__(self,name=’Fido’,species=’Dog’): […]

Usando exec () con funciones recursivas

Quiero ejecutar algún código de Python, escrito en tiempo de ejecución, así que obtengo la cadena y llamo exec (pp, globals (), locals ()) donde pp es la cadena. Funciona bien, excepto para las llamadas recursivas, por ejemplo, por ejemplo, este código es correcto: def horse(): robot.step() robot.step() robot.turn(-1) robot.step() while True: horse() Pero este […]

Triangulo de pascales con recursion

De acuerdo, alguien puede decirme si mi código actual es posible. Tengo que crear triangularjs de pascales con una entrada SIN usar ningún bucle. Estoy obligado a la recursión. He pasado 3 días en esto, y esta es la mejor salida que puedo hacer. me está volviendo loca def pascal(curlvl,newlvl,tri): if curlvl == newlvl: return […]

tomar un char e imprimir de char a ‘a’ y revertirlo debería ser recursivo

este código debe tomar un char como argumento e imprimir ese char en orden alfabético a ‘a’ y revertir a char. >>> characters(‘d’) dcbabcd Esto es lo que escribí hasta ahora, pero no es el resultado correcto. def characters(char): numb=ord(char) while numb>ord(‘a’): >> print chr(numb), numb=numb-1 return >>> characters(‘h’) gfedcba

El progtwig palíndromo de Python no funciona

He escrito un progtwig simple en python que verifica si la oración es palíndromo. Pero no puedo entender por qué no está funcionando. Los resultados son siempre falsos. ¿Alguien sabe lo que está mal? def isPalindrome(word): # Removes all spaces, and lowercase the word. word = word.strip().lower() word = word.replace(” “, “”) # If the […]

python 3.2 – encuentra el segundo número más pequeño en una lista usando recursión

Así que necesito encontrar el segundo número más pequeño dentro de una lista de enteros que usan recursión, pero no puedo, por mi vida, idear una manera de hacerlo. Puedo hacerlo para encontrar el número más pequeño usando esto: def smallest(int_list): if(len(int_list) == 1): return int_list[0] else: a = smallest(int_list[1:]) b = int_list[0] if(a <= […]

statement de retorno no devuelve nada en la recursión de python

Los siguientes métodos buscan en una cadena para encontrar si tiene algún método python. def there_is_a_call( string ): return string.find(‘(‘) > -1 def find_and_remove_functions( string , found_functions ): if not there_is_a_call( string ): print( found_functions ) return found_functions else: function_end = string.find(‘(‘) function_string = string[:function_end][::-1] if function_string.find(‘.’) > -1 : index = function_string.find(‘.’) elif function_string.find(‘ […]

¿Cambio variable inesperado en la recursión?

Contexto Actualmente estoy intentando el desafío / r / dailyprogrammer de Reddit . La idea es encontrar una solución a un laberinto ASCII. Desafortunadamente, la recursión está funcionando de manera diferente de lo que esperaba. El progtwig verifica si hay espacio para moverse a la derecha, a la izquierda, debajo o arriba del espacio actual. […]