Question
Define a polymorphic Tree data type, where a Tree is either a Node with a left subtree, a value, and a right subtree; or it
Define a polymorphic Tree data type, where a Tree is either a Node with a left subtree, a value, and a right subtree; or it is a Leaf with just a value.
(a) Three polymorphic functions -- inOrder, preOrder, and postOrder -- to traverse the tree in-order, pre-order, and post-order. Each function takes a tree and returns a list with the contents of the tree when traversed in that order.
(b) A polymorphic function, search, which takes two arguments a Tree and a key and returns a boolean result based on whether the key is found in the tree.
(c) A polymorphic function, replace, which takes three arguments a Tree t, a value before, and a value after and returns a variant of t with ALL instances of before replaced with the value after.
Step by Step Solution
There are 3 Steps involved in it
Step: 1
Get Instant Access to Expert-Tailored Solutions
See step-by-step solutions with expert insights and AI powered tools for academic success
Step: 2
Step: 3
Ace Your Homework with AI
Get the answers you need in no time with our AI-driven, step-by-step assistance
Get Started