This Java program implements a Max Heap data structure that manages characters. The heap organizes characters such that the largest character
(in terms of its lexicographical order) is always at the root of the heap. The program supports adding characters, removing the largest character,
and performing some additional operations like displaying and traversing the heap in preorder.
* (asterisk) - prints the root of the heap (the maximum character) and removes it using the delete() method.
# (hash) - displays the current state of the heap.
! (exclamation) - performs a preorder traversal of the heap and prints the result.
ABCDE*!#
output:
E
E
A B D C
E D B A C