Algorithms, Blockchain and Cloud

Teaching Kids Programming – Draw a Tree in Python using Turtle Graphics (Recursion)

Draw a Tree in Python (Turtle Graphics)

Teaching Kids Programming: Videos on Data Structures and Algorithms

Recursive Tree in Python using Turtle Graphics

A tree is self-recursive just like the data structure binary tree where the left and right are recursively defined.

Here is how we define a binary tree to hold data:

class TreeNode(object):
    def __init__(self, val, left=None, right=None):
        self.val = val
        self.left = left
        self.right = right

With the turtle graphics library aka import turtle, we draw the trunk (walk N steps), turn left 30 degrees and then draw a left sub tree with size smaller e.g. 60%*N. Then we turn 60 degree to draw the right sub tree. Then we turn left 30 degree and walk backwards N steps so that the turtle restores to the begining.

The subtrees will be recursively drawn until N is falling below a threshold e.g. 10 steps.

from turtle import *
reset()
color("green")
speed(-1)
seth(90)

def tree(size):
    if size < 10:
        return
    fd(size)
    lt(30)
    tree(size * 0.6)
    rt(60)
    tree(size * 0.6)
    lt(30)
    bk(size)

tree(100)

Draw a Tree in Python (Turtle Graphics)

See also: Bug-fixes for PHP Online Logo Interpreter

–EOF (The Ultimate Computing & Technology Blog) —

346 words
Last Post: Teaching Kids Programming - Is Subsequence Algorithm via Recursion (Greedy)
Next Post: Teaching Kids Programming - Delete the Middle Node of a Linked List (Fast and Slow Pointer)

The Permanent URL is: Teaching Kids Programming – Draw a Tree in Python using Turtle Graphics (Recursion) (AMP Version)

Exit mobile version