Building Java Programs: A Back To Basics Approach (5th Edition)
Building Java Programs: A Back To Basics Approach (5th Edition)
5th Edition
ISBN: 9780135471944
Author: Stuart Reges, Marty Stepp
Publisher: PEARSON
Question
Book Icon
Chapter 17, Problem 2PP
Program Plan Intro

Encode and decode of Morse code files

Program plan:

  • Create an class“MorseTree”,
    • Construct the object for “BinaryTreeNode”.
    • Declare the size variable
    • Specify the necessary constants
    • Define the constructor to creates a new instance of “MorseTree”,
      • Create the object to set up the tree
      • Initialize the dictionary by filling it with object pairs with numbers.
      • Initialize the dictionary by filling it with object pairs with alphabets.
      • Initialize the dictionary by filling it with object pairs with numbers.
    • Define the method “putn()”,
      • Assign the initial values.
      • Assign the value get from “getRoot()” to the object.
      • Construct the object for “BinaryTreeNode”.
      • Execute loop till down to the path,
        • Assign the substring.
        • Check whether the values are equal,
          • Check whether there is a left child,
            • Get and assign the left child.
          • Otherwise, Set the left child.
          • Increment the size.
          • Assign the left child to the binary tree.
          • Get and assign the left child.
          • Call the method “set_Parent()”.
      • Otherwise,
        • Check there is a right child,
          • Get and assign the right child.
        • Otherwise,
          • Set the right child.
          • Increment the size.
          • Assign the right child to the binary tree.
          • Get the right child.
          • Set the parent to the right child.
      • Set the element.
    • Define the method “decode()”,
      • Assign the necessary values to the variable
      • Get the root of the tree
      • Execute till the length,
        • Get and assign the substring.
        • Check whether the values are equal,
          • Check there is a left child,
            • Get the left child.
          • Otherwise,
            • Throws an exception "RuntimeException”.
          • Otherwise, check whether the values are equal,
            • Check there is a right child,
              • Get the right child.
            • Otherwise,
              • Throws an exception "RuntimeException".
      • Return the elements.
    • Define the method “getRoot()” to return the root.
    • Define the method “size()” to return the size.
    • Define the method “main()” ,
      • Print the heading.
      • Create the object for MorseTree.
      • Assign the decode fragment.
      • Print the values.
      • Print the decoded output for those values.
  • Create a class “BinaryTreeNode”,
    • Declare the object variables.
    • Define the constructor to create an empty binary tree.
    • Define the parameterized constructor to set the elements into the binary tree.
    • Define the method “set_Parent()” to set the parent node.
    • Define the method “getParent()” to return the parent node.
    • Define the method “set_LeftChild()” to set the left child.
    • Define the method “set_RightChild()” to set the right child.
    • Define the method “has_LeftChild()” to check there is a left child.
    • Define the method “has_RightChild()” to check there is a right child.
    • Define the method “set_Element()” to set the element into the tree.
    • Define the method “get_LeftChild()” to return the left child.
    • Define the method “get_RightChild()” to return the right child.
    • Define the method “element()” to return the element.
    • Define the method “get_Height()” to find the height of the tree.
    • Define the method “find_Height()” ,
      • Check whether the node is a leaf,
        • Return “0”.
      • Otherwise, return the computed value.
    • Define the method “isLeaf()”,
      • Return the Boolean value.
    • Define the method “getSize()” to return the size.
    • Define the method “findSize()” to find the size.

Blurred answer
Knowledge Booster
Background pattern image
Recommended textbooks for you
Text book image
Database System Concepts
Computer Science
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:McGraw-Hill Education
Text book image
Starting Out with Python (4th Edition)
Computer Science
ISBN:9780134444321
Author:Tony Gaddis
Publisher:PEARSON
Text book image
Digital Fundamentals (11th Edition)
Computer Science
ISBN:9780132737968
Author:Thomas L. Floyd
Publisher:PEARSON
Text book image
C How to Program (8th Edition)
Computer Science
ISBN:9780133976892
Author:Paul J. Deitel, Harvey Deitel
Publisher:PEARSON
Text book image
Database Systems: Design, Implementation, & Manag...
Computer Science
ISBN:9781337627900
Author:Carlos Coronel, Steven Morris
Publisher:Cengage Learning
Text book image
Programmable Logic Controllers
Computer Science
ISBN:9780073373843
Author:Frank D. Petruzella
Publisher:McGraw-Hill Education