## Homework No. 2

[Trees; Priority Queues; Dictionaries]

The number of your particular task is the value of the expression faculty_number%15.
Write a complete program with at least one example in main function.

 No Task Exercise Description 0 Complete the implementation of class LinkedBinaryTree taking into account error conditions. P-6.1 &6.4.2 1 Complete the implementation of class LinkedBinaryTree and apply algorithms, given in Code Fragments 6.2, 6.4, and 6.6. - &6.4.2 &6.2.2 2 Complete the implementation of class LinkedBinaryTree and write functions (for binary tree), given in Code Fragments 6.9, 6.10, and 6.12. - &6.2.3,4 &6.4.2 3 Complete the implementation of class LinkedBinaryTree and write functions, given in Code Fragments 6.18 and 6.20. - &6.3.4,5 &6.4.2 4 Implement the binary ADT using a vector. P-6.2 &6.4.1 5 Implement the binary ADT using a linked structure. P-6.3 &6.4.2 6 Write a program that takes, as input, a fully parenthesized, arithmetic expression and convert it to a binary expression tree. Your program should display the tree in some way and also print the value associated with the root. P-6.9* 7 Complete the program for comparator class using Code Fragments 7.3 and 7.4. - &7.1.4 8 Give a C++ implementation of a priority queue based on an unsorted sequence. P-7.2 &7.2.1 9 Give a C++ implementation of a priority queue based on a sorted sequence using Code Fragments 7.5 and 7.6. - &7.2.2 10 Develop a C++ implementation of a priority queue that is based on a heap. P-7.4* &7.3.3 11 Implement an unordered dictionary ADT (log file) with unsorted sequence implementation. - &8.1.2 12 Implement the dictionary ADT with a hash table that handles collisions with separate chaining. P-8.2 &8.2.5 13 Implement the dictionary ADT with a hash table that handles collisions with quadratic probing. - &8.2.5 14 Implement the dictionary ADT with a hash table that handles collisions with double hashing. - &8.2.5

* The task is only a part of the Exercise.