Write program for queue of cards, JAVA Programming

Assignment Help:

A Queue of Cards

You are going to parallel the development done in the lesson on inheritance where we constructed some base classes, StackNode and Stack, and derived  FloatNode and FloatStack from them.  You can work best by referring to those modules all through the development of your program.  These are the differences between what we did in the lesson and what you will do for your assignment.

  1. Instead of a Stack data structure, you will create a Queue data structure.  A Stack is last-in-first-out (LIFO).  A Queue is first-in-first-out (FIFO).
  2. Instead of deriving a FloatNode from the basic Node class, you will derive a CardNode from NodeCardNode will use the Card class of Week 1.

Here are the details:

Base Class Node

You can use the same class for a base class that was used in the modules.  However, I want you to give this class a different name.  Call it Node (not QueueNode or StackNode, just Node).

Base Class Queue

Next, do almost the same thing as we did with the Stack class, except make sure that this class works like a Queue, not a Stack.  That means

  • We add items to the Queue using Add() not Push()Push() does not appear in our Queue class.
  • We retrieve items from the Queue using Remove() not Pop()Pop() does not appear in our Queue class.
  • Remove() removes and returns the oldest item in the Queue.  This is different from Pop() which removed and returned the youngest item in the Queue.
  • Provide a ShowQueue() method that displays all the items in the Queue from oldest to youngest.
  • Instead of one Node pointer member, top, you'll need two Node pointer members, and neither should be called top (since top is not meaningful in a Queue).  Examples are head/tail, front/back, oldest/youngest, etc.  Select two names and use them accordingly.

Once you have written these two classes, write a simple test main() just like I did in the modules - show a run that displays some (generic node)s.  Test the ShowQueue() method and also build a simple loop in your main() to remove and display nodes as they are removed.   Compare the output of these two techniques -- they should be identical.  You will not hand this in.  It is just for your use in developing the full program.

Add() and Remove() will be slightly more complicated than Push() and Pop() because you have two pointers, front and back (or head and tail, or whatever you call them) to manage.  This may take some time and debugging.  Test it carefully.  Even after you get it to work, you may find that it still needs debugging later, since your "(generic node)" screen results won't tell you if things are coming off in the correct order.  You won't know that until you have real data in your Nodes.  That's the next part.


Related Discussions:- Write program for queue of cards

What is runnable jar archives, What is Runnable JAR archives You can ru...

What is Runnable JAR archives You can run a program stored within the JAR archive that has a main() method like this: $ java -cp eharold.jar MainClassName You must use the f

What are the basic components of jsp?, There are two different types of dat...

There are two different types of data in a JSP page. 1. Static part which occurs copied directly to the response by the JSP Engine. 2. Dynamic part, which have anything that

Demonstrate a minimal server and client program, This exercise will give yo...

This exercise will give you some introductory exposure to network programming with sockets. Your task is to demonstrate a minimal server program and client program that can send on

Activity diagram, The statechart diagrams and activity diagram are related ...

The statechart diagrams and activity diagram are related in a sense that statechart diagram refers on object undergoing a transition process and an activity diagram refers on the f

Waving two numbers into each other, I have to weave two positive integers t...

I have to weave two positive integers together. For example, if the numbers are 137 and 064, the output integer would be 103647. This has to be done using integer arithmetic (not s

A simple desktop software, A simple Desktop Software Project Description...

A simple Desktop Software Project Description: We want a tool that could convert Flash Games into HTML5 Files. These are not tedious games, very simple game. I have attached

PatternPrinter , The method should printout line numbers from 1 to howmany ...

The method should printout line numbers from 1 to howmany in the previous format -ONLY WHEN is divisble by 3 but is should not oupt more then 3 numbers on the line. input 1 outpu

What is the role of hub in networks, What is the role of hub in networks? ...

What is the role of hub in networks? The network traffic controller - elements of convential computer networks. Hub is used to link the different computers within the network i

Java Thread, What is use of join in Java Threading

What is use of join in Java Threading

Explain the order of evaluation of logic operators, Explain the Order of Ev...

Explain the Order of Evaluation of Logic Operators ? When Java sees a && operator or a ||, the expression on the left side of the operator is evaluated first. For instance, con

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd