Question

In: Computer Science

You may not use the java.util.Stack class. You may not use the java.util.Queue class. Write method...

You may not use the java.util.Stack class.
You may not use the java.util.Queue class.
Write method showStack(): It displays the contents of the stack starting with the first inserted element to the last. The stack would contain the same elements after showStack(). . If for example if to an empty stackx we push(20) then push(30) showStack() would print 20 30

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

// stack.java
// demonstrates stacks
// to run this program: C>java StackApp
////////////////////////////////////////////////////////////////
class StackX
{
private int maxSize; // size of stack array
private long[] stackArray;
private int top; // top of stack
//--------------------------------------------------------------
public StackX(int s) // constructor
{
maxSize = s; // set array size
stackArray = new long[maxSize]; // create array
top = -1; // no items yet
}
//--------------------------------------------------------------
public void push(long j) // put item on top of stack
{
stackArray[++top] = j; // increment top, insert item
}
//--------------------------------------------------------------
public long pop() // take item from top of stack
{
return stackArray[top--]; // access item, decrement top
}
//--------------------------------------------------------------
public long peek() // peek at top of stack
{
return stackArray[top];
}
//--------------------------------------------------------------
public boolean isEmpty() // true if stack is empty
{
return (top == -1);
}
//--------------------------------------------------------------
public boolean isFull() // true if stack is full
{
return (top == maxSize-1);
}
//--------------------------------------------------------------
} // end class StackX
////////////////////////////////////////////////////////////////
class StackApp
{
public static void main(String[] args)
{
StackX theStack = new StackX(10); // make new stack
theStack.push(20); // push items onto stack
theStack.push(40);
theStack.push(60);
theStack.push(80);

while( !theStack.isEmpty() ) // until it's empty,
{ // delete item from stack
long value = theStack.pop();
System.out.print(value); // display it
System.out.print(" ");
} // end while
System.out.println("");
} // end main()
} // end class StackApp
////////////////////////////////////////////////////////////////

TEST WITH, DONT CHANGE ANYTHING IN STACKTEST.JAVA

public class StackTest
{
    public static void main(String[] args)
    {
        StackX theStack = new StackX(10);  // make new stack
        theStack.push(20);               // push items onto stack
        theStack.push(30);
        theStack.push(40);
        theStack.push(40);
        theStack.push(60);
        theStack.push(80);

        theStack.showStack();

        System.out.println("removeDownTo(40)");
        theStack.removeDownTo(40);

        theStack.showStack();

    }  // end main()
}

you have to implement METHOD ShowStack().

Solutions

Expert Solution

StackX.java

// stack.java
// demonstrates stacks
// to run this program: C>java StackApp
class StackX {
private int maxSize; // size of stack array
private long[] stackArray;
private int top; // top of stack
public StackX(int s) // constructor
{
maxSize = s; // set array size
stackArray = new long[maxSize]; // create array
top = -1; // no items yet
}
public void push(long j) // put item on top of stack
{
stackArray[++top] = j; // increment top, insert item
}
public long pop() // take item from top of stack
{
return stackArray[top--]; // access item, decrement top
}
public long peek() // peek at top of stack
{
return stackArray[top];
}
public boolean isEmpty() // true if stack is empty
{
return (top == -1);
}
public boolean isFull() // true if stack is full
{
return (top == maxSize - 1);
}
public void showStack() {
   //taking temporary stack
StackX temporaryStack = new StackX(maxSize);
//until current stack is empty we are pushing elements to our temporary stack
while(!this.isEmpty()){
temporaryStack.push(this.pop());
}
//displaying our temporary stack which is a reverse of stack
while(!temporaryStack.isEmpty()){
long x = temporaryStack.pop();
System.out.print(x + " ");
//adding again to original stack
this.push(x);
}
}
} // end class StackX

StackTest.java

public class StackTest {
public static void main(String[] args) {
StackX theStack = new StackX(10); // make new stack
theStack.push(20); // push items onto stack
theStack.push(30);
theStack.push(40);
theStack.push(40);
theStack.push(60);
theStack.push(80);

theStack.showStack();

// System.out.println("removeDownTo(40)");
//theStack.removeDownTo(40);
//theStack.showStack();

} // end main()
}


Related Solutions

You may not use the java.util.Stack class. You may not use the java.util.Queue class. Write method...
You may not use the java.util.Stack class. You may not use the java.util.Queue class. Write method showStack(): It displays the contents of the stack starting with the first inserted element to the last. The stack would contain the same elements after showStack(). . If for example if to an empty stackx we push(20) then push(30) showStack() would print 20 30 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- // stack.java // demonstrates stacks // to run this program: C>java StackApp //////////////////////////////////////////////////////////////// class StackX { private int maxSize;...
You may not use the java.util.Stack class. You may not use the java.util.Queue class. Write a...
You may not use the java.util.Stack class. You may not use the java.util.Queue class. Write a method public static Object removeSecond (): It removes and returns the element just behind the front element. Precondition: The queue has at least two elements. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ // Queue.java // demonstrates queue // to run this program: C>java QueueApp //////////////////////////////////////////////////////////////// class Queue { private int maxSize; private long[] queArray; private int front; private int rear; private int nItems; //-------------------------------------------------------------- public Queue(int s) // constructor {...
You may not use the java.util.Stack class. You may not use the java.util.Queue class. Write a...
You may not use the java.util.Stack class. You may not use the java.util.Queue class. Write a method public static void removeDownTo (long n): It pops all values off the stack down to but not including the first element it sees that is equal to the second parameter. If none are equal, leave the stack empty. \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\ // stack.java // demonstrates stacks //////////////////////////////////////////////////////////////// class StackX { private int maxSize; // size of stack array private long[] stackArray; private int top; //...
You may not use the java.util.Stack class. You may not use the java.util.Queue class. Ex1: Write...
You may not use the java.util.Stack class. You may not use the java.util.Queue class. Ex1: Write a program that converts a decimal to binary using a stack. My professor gave me this question to code, is this even possible? if it is can someone code it, in java.
JAVA: USE SWITCH METHOD Write a Temperature class using the Demo below. The class will have...
JAVA: USE SWITCH METHOD Write a Temperature class using the Demo below. The class will have three conversion methods: toCelcius(), toKelvin and toFahrenheit(). These methods will return a Temperature in those three scales equal to this temperature. Note that the value of this is not changed int these coversions. In addition to these conversion methods the class will have add(Temperature), subtract(Temperature), multiply(Temperature) and divide(Temperature). These four methods all return a temperature equalled to the respective operation. Note that the this...
Write a java program with the following classes: Class Player Method Explanation: play : will use...
Write a java program with the following classes: Class Player Method Explanation: play : will use a loop to generate a series of random numbers and add them to a total, which will be assigned to the variable score. decideRank: will set the instance variable rank to “Level 1”, “Level 2”, “Level 3”, “Level 4” based on the value of score, and return that string. getScore : will return score. toString: will return a string of name, score and rank....
Use LinkedList build-in class (java.util.LinkedList) to write a Java program that has: A. Method to print...
Use LinkedList build-in class (java.util.LinkedList) to write a Java program that has: A. Method to print all elements of a linked list in order. B. Method to print all elements of a linked list in reverse order. C. Method to print all elements of a linked list in order starting from specific position. D. Method to join two linked lists into the first list in the parameters. E. Method to clone a linked list. The copy list has to be...
import java.util.Scanner; public class MonthsOnAndAfter { // You will need to write a method that makes...
import java.util.Scanner; public class MonthsOnAndAfter { // You will need to write a method that makes this // code compile and produce the correct output. // YOU MUST USE switch! // As a hint, you should not have to use the name of each // month more than once. // TODO - write your code below this comment. // DO NOT MODIFY main! public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("Enter month (0-11): "); int month...
import java.util.Scanner; public class Months { // You will need to write a method that makes...
import java.util.Scanner; public class Months { // You will need to write a method that makes this // code compile and produce the correct output. // YOU MUST USE switch! // TODO - write your code below this comment. // DO NOT MODIFY main! public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.print("Enter month (0-11): "); int month = input.nextInt(); String output = monthAsString(month); System.out.println(output); } }
import java.util.LinkedList; import java.util.Queue; import java.time.*; public class CheckOutLine { /** This is the main function...
import java.util.LinkedList; import java.util.Queue; import java.time.*; public class CheckOutLine { /** This is the main function for the program */ public static void main() { System.out.println("\n\tBegin CheckOutLine Demo\n"); System.out.println("\nCreating a Queue called \"register\" based on a LinkedList"); Queue<Customer> register = new LinkedList<Customer>();    System.out.println("\nAdding Customers to the Register queue"); // 1. TO DO: add five or more customers to the register line (5 Pts) // format: register.add(new Customer(name, checkout time));                System.out.printf("Register line has %d customers\n",...
ADVERTISEMENT
ADVERTISEMENT
ADVERTISEMENT