def create_large_tree():
 value_of_nodes = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 'a', 'b', 'c', 'd', 'e']
 tree = ''
 depth = 0
 count = 0
 while (depth < 4):
  if (depth == 0):
   tree = [value_of_nodes[0], [], []]
   depth += 1
   count += 1
  elif (depth == 1):
   for i in [1, 2]:
    tree[i] = [value_of_nodes[count], [], []]
    count += 1
   depth += 1
  elif (depth == 2):
   for (i, j) in itertools.product([1, 2], repeat=depth):
    tree[i][j] = [value_of_nodes[count], [], []]
    count += 1
   depth += 1
  elif (depth == 3):
   for (i, j, k) in itertools.product([1, 2], repeat=depth):
    tree[i][j][k] = [value_of_nodes[count], [], []]
    count += 1
   depth += 1
 return tree

def create_large_tree ( ) : value_of_nodes = [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 'a' , 'b' , 'c' , 'd' , 'e' ] tree = '' depth = 0 count = 0 while ( depth < 4 ) : if ( depth == 0 ) : tree = [ value_of_nodes [ 0 ] , [ ] , [ ] ] depth += 1 count += 1 elif ( depth == 1 ) : for i in [ 1 , 2 ] : tree [ i ] = [ value_of_nodes [ count ] , [ ] , [ ] ] count += 1 depth += 1 elif ( depth == 2 ) : for ( i , j ) in itertools . product ( [ 1 , 2 ] , repeat = depth ) : tree [ i ] [ j ] = [ value_of_nodes [ count ] , [ ] , [ ] ] count += 1 depth += 1 elif ( depth == 3 ) : for ( i , j , k ) in itertools . product ( [ 1 , 2 ] , repeat = depth ) : tree [ i ] [ j ] [ k ] = [ value_of_nodes [ count ] , [ ] , [ ] ] count += 1 depth += 1 return tree
create a tree with up to 4 levels of nodes to show that implementation scales .