Profundidad de un dict anidado en Python
Medir la profundidad de recursión sobre datos anidados.
def profundidad(arbol):
if not isinstance(arbol, dict) or not arbol:
return 0
return 1 + max(profundidad(hijo) for hijo in arbol.values())
Cómo funciona
- Lo que no es dict y los dicts vacíos tienen profundidad cero.
- Si no, entra en recursión por cada valor hijo.
- La profundidad es uno más que la del hijo más profundo.
Palabras clave y builtins usados aquí
defdictforifisinstancemaxreturn
El intento, en números
- Líneas
- 4
- Caracteres a escribir
- 138
- Tokens
- 38
- Ritmo de tres estrellas
- 100 tpm
Al ritmo de tres estrellas de 100 tokens por minuto, este intento toma unos 23 segundos.
Paso 5 de 5 en Algoritmos; paso 55 de 72 en Fundamentos del lenguaje.