Flattening Binary Tree in Java
public static Cons flattenbt (Object tree) { return flattenbtb(tree, null); } public static Cons flattenbtb (Object tree, Cons result) { if ( consp(tree) ) return flattenbtb( lhs((Cons) tree), cons( op((Cons) tree), flattenbtb( rhs((Cons) tree), result))); return ( tree == null ) ? result : cons(tree, result); }
btr = (cat (bat ape bee) (elf dog fox)) flatten = (ape bat bee cat dog elf fox)