您所在的位置:首页 - 百科 - 正文百科

编写递归函数

格云
格云 04-19 【百科】 841人已围观

摘要编程中的递归例题编程中的递归例题问题描述:计算一个非负整数的阶乘。deffactorial(n):ifn==0:return1else:returnn*factorial(n-1)#调用函数计算5的阶

编程中的递归例题

编程中的递归例题

问题描述:计算一个非负整数的阶乘。

def factorial(n):

if n == 0:

return 1

else:

return n * factorial(n1)

调用函数计算5的阶乘

result = factorial(5)

print(result)

问题描述:输出斐波那契数列的第n个数字。

def fibonacci(n):

if n <= 1:

return n

else:

return fibonacci(n1) fibonacci(n2)

输出斐波那契数列的第8个数字(从0开始)

result = fibonacci(8)

print(result)

问题描述:计算文件夹及其子文件夹中所有文件的总大小。

import os

def get_folder_size(path):

total_size = 0

for dirpath, dirnames, filenames in os.walk(path):

for filename in filenames:

file_path = os.path.join(dirpath, filename)

total_size = os.path.getsize(file_path)

return total_size

计算指定路径下文件夹的总大小

folder_path = "C:/Users/User/Documents"

total_size = get_folder_size(folder_path)

print(total_size)

问题描述:实现二叉树的前序遍历、中序遍历和后序遍历。

class TreeNode:

def __init__(self, value=0, left=None, right=None):

self.value = value

self.left = left

self.right = right

def preorder_traversal(node):

if node:

print(node.value)

preorder_traversal(node.left)

preorder_traversal(node.right)

def inorder_traversal(node):

if node:

inorder_traversal(node.left)

print(node.value)

inorder_traversal(node.right)

def postorder_traversal(node):

if node:

postorder_traversal(node.left)

postorder_traversal(node.right)

print(node.value)

创建二叉树并进行遍历

root = TreeNode(1)

root.left = TreeNode(2)

root.right = TreeNode(3)

root.left.left = TreeNode(4)

root.left.right = TreeNode(5)

print("Preorder Traversal:")

preorder_traversal(root)

print("Inorder Traversal:")

inorder_traversal(root)

print("Postorder Traversal:")

postorder_traversal(root)

Tags: 斗罗大陆165 春联怎么贴 诛仙手游隐藏任务大全

最近发表

icp沪ICP备2023033053号-25
取消
微信二维码
支付宝二维码

目录[+]