logo Use CA10RAM to get 10%* Discount.
Order Nowlogo
(5/5)

For this assignment you’ll be implementing several tree-based algorithms that we saw in class. Specifically you’re editing only “tree.c”.

INSTRUCTIONS TO CANDIDATES
ANSWER ALL QUESTIONS

For this assignment you’ll be implementing several tree-based algorithms that we saw in class. Specifically you’re editing only “tree.c”. You shouldn’t change any other files. Here are your algorithms to implement:

 

AVL Tree - rebalanceTree

Here is a brief outlline of algorithm for rebalancing the tree using AVL trees:

Reminder: the balance of x is the height of the left subtree of x - height of the right subtree of x.

  • Let x be the node we are starting our rebalance from

  • While x is not NULL

    •  
  • if the balance of x is 2 or 2

    • Set z equal to the child of x with the greater height

    • if the balance of x and the balance of z have different signs

      • if the sign of the balance of z is + right rotate on z

      •  

  • if the sign of the balance of z is left rotate on z

  • if the balance of x is 2 right rotate on x

  •  

  • if the balance of x is 2 left rotate on  x

  • be sure to update the heights of rotated nodes

  • Update height of the rotated nodes. (height of a node = height of its taller subtree plus 1).

  • Set x equal to the parent of x

 

Huffman Tree - printHuffmanEncoding

Given the root of a Huffman tree and a character, print the sequence of bits used to encode that character based on the tree.

Reminder: Going left in the Huffman tree appends a ‘0’ and going right ap- pends a ‘1’.

(5/5)
Attachments:

Related Questions

. Introgramming & Unix Fall 2018, CRN 44882, Oakland University Homework Assignment 6 - Using Arrays and Functions in C

DescriptionIn this final assignment, the students will demonstrate their ability to apply two ma

. The standard path finding involves finding the (shortest) path from an origin to a destination, typically on a map. This is an

Path finding involves finding a path from A to B. Typically we want the path to have certain properties,such as being the shortest or to avoid going t

. Develop a program to emulate a purchase transaction at a retail store. This program will have two classes, a LineItem class and a Transaction class. The LineItem class will represent an individual

Develop a program to emulate a purchase transaction at a retail store. Thisprogram will have two classes, a LineItem class and a Transaction class. Th

. SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 1 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

. Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of Sea Ports. Here are the classes and their instance variables we wish to define:

1 Project 2 Introduction - the SeaPort Project series For this set of projects for the course, we wish to simulate some of the aspects of a number of

Ask This Question To Be Solved By Our ExpertsGet A+ Grade Solution Guaranteed

expert
Um e HaniScience

936 Answers

Hire Me
expert
Muhammad Ali HaiderFinance

752 Answers

Hire Me
expert
Husnain SaeedComputer science

635 Answers

Hire Me
expert
Atharva PatilComputer science

974 Answers

Hire Me