_Problem Statement_
Suppose that jobs entering a computer system are assigned a job number and a priority from 0 (lowest priority) to 9 (highest priority). The jobs awaiting execution by the system are kept in a *priority queue*. A job entered into this queue is placed ahead of all jobs of lower priority, but after all those of equal or higher priority. A priority queue is a queue in which the insertion method has been modified so that an element is not just simply added onto the back of the queue. Instead, each element has a priority, and the queue is ordered in a non-increasing order of priority. Thus, the first element in the queue has the highest priority; and the last element has the lowest. Note that priority queues allow elements to wait indefinitely in the queue if they are constantly pre-empted by the addition of higher priority elements.
You need to implement the priority queue using a heap. The best implementation is to use a heap. Implementations of the two basic operations (Insert and Remove Max) can be done each in O(log2 n).
* Your task is to write an application that uses a heap of queues to store the jobs and allows the user to select one of the following two buttons:
* Remove ??" read a job from the front queue and then removes it from the queue. Display on the status label the job number that was removed.
* Add ??" read a job number from a text field and a job priority from another text field; and then add this job to the priority queue in the manner described above. Display on the status label the number and the priority of the job that has been entered into the priority queue.
## Deliverables
Rent A Coder requirements notice: As originally posted, this bid request does not have complete details. Should a dispute arise and this project go into arbitration "as is", the contract's vagueness might cause it to be interpreted against you, even though you were acting in good-faith. So for your protection, if you are interested in this project, please work-out and document the requirements onsite.
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows? (depending on the nature? of the deliverables):
a)? For web sites or? other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software? installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
My assignments are done using Java? Netbeans IDE 3.6.