Instruction
As you begin to look at data structures using Java, this first assignment will have you look at the implementation of a queue and a stack. These two algorithms will be implemented using linked lists. You will complete 2 given program shells: one for a queue and the other for a stack.
In addition, you will establish your Key Assignment template that you will build in Week 1, and each week, you will add material to the appropriate section of the document.
Your Data Structures Using Java template document should be in the following format:
Data Structures Using Java document shell
Use MS Word
Title Page
Course number and name
Project name
Student name
Date
Table of Contents
Use auto-generated TOC
Separate page for each section
Maximum of 3 levels deep
Be sure to update fields of TOC so it is up-to-date before submitting your project
Abstract
Paper Topic Background
Section Headings (Create each heading on a new page with TBD as the content except for the sections you are currently working on.)
Section 1: Lists, Stacks, and Queues
Section 2: Heaps and Trees
Section 3: Sorting Algorithms
Section 4: Searching
Section 5: Recursion
Conclusion
References
Each week, you will add to this document and submit for grading. As a preview, each section will contain the following:
Section 1: Lists, Stacks, and Queues
Implement 2 programs for the following:
Stacks
Queues
Section 2: Heaps and Trees
Implement pseudo code for a hash table and resolve collisions with a linked list.
Section 3: Sorting Algorithms
Compare sort algorithms.
Section 4: Searching
Implement pseudo code to search for values in a linked list or array.
Section 5: Recursion
Implement pseudo code to create a factorial of a number using recursion.
Week 1: Assignment Details
The task this week is to complete the following 2 structures using a linked list:
Stack
Queue
Assume the occurrence of a linked list node is represented by the object “Node” and its “Data” and “NextRef” attributes.
Part 1: Assume a “Head” node exists with the NextRef attribute pointing to the first node in the stack or being null if the stack is empty. Create pseudo code for the following 3 stack methods, showing the logic tied to the inverted list. Include a summary of these actions.
push( item )
pop( )
display( )
Part 2: Assume “Front” and “Rear” nodes exist with the “NextRef” attributes pointing to the first and last nodes of the queue or being null if the queue is empty. Create pseudo code for the following 3 queue methods, showing the logic tied to the inverted list. Include a summary of these actions.
enqueue( item )
dequeue( )
display( )
Week 1 Deliverables:
Pseudo code implemented for both the stack and queue methods
Documented pseudo code
Add the completed pseudo code and discussion to the Key Assignment template Section 1: Lists, Stacks, and Queues.
Name the document "IT265__IP1.doc."