Consider a rooted binary tree, where each intern
Consider a rooted binary tree, where each internal (intermediate) node has 2 children. Assume each node, in particular, the leaves, has a symbol or variable associated with it. F or the edges from each node to its children, associate a value 1 to one edge, and a value 0 to the other edge.A special case of such trees is the Huffman tree, or Huffman coding tree.Another special case isbinary decision trees.One goal is to determine the code or sequence of 0’s and 1’s that result when one traverses a path from the root to each leaf of the tree.Devise an algorithm, pseudo-code or source code to implement the generation of such root-to-leaf codes, using each of the following approaches. (Hint: in case of difficulty handling the general case for arbitrary binary trees, try to first devise solutions for concrete examples of theweighted binary trees of depths 1, 2, 3, 4,5, 6, 7, 8, and then try to tackle the general case) (Hint: use concepts and tools of procedures, functions and recursion to achieve modularity)
a.If,if-else statements, expressions
b.Case-switch statements, expressions
c.Guarded if, guarded do statements, commands
d.Attribute grammar based evaluation