栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

python 递归树

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

python 递归树

递归可以用来描述分形。分形常用来描述自然界中许多不规范的、真实对象的数字图形。

递归的图形还能说明递归是如何工作的。以递归绘制图树为例,绘制树枝的过程如下:首先绘制一条直线,然后左转,绘图(递归分支),右转,绘制(递归分支),最后返回原来的直线。

(31条消息) python Turtle Graphics海龟绘图工具_kaituozhizzz的博客-CSDN博客

前面有写到python中海龟绘图的使用

这里我们用海龟绘图制作一个递归树

 上代码:
from turtle import *
def branch(length, level):
	if level <= 0:
		return
	forward(length)
	left(45)
	branch(0.6*length, level-1)
	right(90)
	branch(0.6*length, level-1)
	left(45)
	backward(length)
	return

left(90)
branch(100,5)
Sierpinski三角形

绘制分形模式是一种有趣的递归实验,和前面一样,向前移动,递归调用,后转,左转120°。

需要跟踪层次,定义停止的基本情况,并且有一个长度参数

 上代码:
from turtle import *

def sierpinski(length,depth):
	if depth > 1: dot()
	if depth == 0:
		stamp()
	else:
		forward(length)
		sierpinski(length/2, depth-1)
		backward(length)
		left(120)
		forward(length)
		sierpinski(length/2, depth-1)
		backward(length)
		left(120)
		forward(length)
		sierpinski(length/2, depth-1)
		backward(length)
		left(120)

sierpinski(200,6)
总结:

递归得到本质是函数的自我调用,

 --------------------------------------------------------------------------------------------------------------------------------总结

递归的本质是,函数的自我调用,通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解,大大地减少了程序的代码量。

递归的能力在于用有限的语句来定义对象的无限集合。

首先是使用了IF语句,然后自我调用也就是建立栈,最后函数回溯

希望多得几个赞啊,得个五一勋章

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/850137.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号