
Rearrange stack of integers
Program plan:
- Import necessary packages.
- Create a class “StackSplit”,
- Define the method “splitstack ()” that accepts stack of integers,
- Construct “LinkedList” object.
- Calculate the stack size.
- Execute till stack is empty,
- Transfer all the stack elements from stack to queue.
- Execute loop till the stack size,
- Assign the element removed from the queue to the variable.
- Check whether the element is negative,
- Insert the element into the stack.
-
- Otherwise,
- Insert the element into the queue.
- Otherwise,
- Execute till queue is empty,
- Transfer non-negative integers from queue to stack.
- Print stack of integers after rearranged.
- Define the method “main()”,
- Create object for “Stack”.
- Add integers into the stack.
- Print the stack of integers.
- Call the method “splitStack()” with stack as parameter.
- Define the method “splitstack ()” that accepts stack of integers,

This program demonstrates the method that accepts a stack of integers and rearranges its elements.
Explanation of Solution
Program:
File name: “StackSplit.java”
//Import necessary packages
import java.util.LinkedList;
import java.util.Queue;
import java.util.Stack;
//Create a class
class StackSplit
{
//Define the method
public static void splitStack(Stack<Integer> s)
{
//Construct LinkedList object
Queue<Integer> q1 = new LinkedList<Integer>();
//Calculate the stack size
int old_Length = s.size();
//Execute till stack is empty
while (!s.isEmpty())
{
//Transfer all elements from stack to queue
q1.add(s.pop());
}
//Execute till the stack size
for (int i = 1; i <= old_Length; i++)
{
//Assign the element removed from the queue
int n1 = q1.remove();
//check whether the element is negative
if (n1 < 0)
{
//Insert the element into the stack
s.push(n1);
}
else
{
//Insert the element into the queue
q1.add(n1);
}
}
//Execute till queue is empty
while (!q1.isEmpty())
{
/*Transfer non-negative integers from queue to stack*/
s.push(q1.remove());
}
//Print stack of integers
System.out.println("The elements of a stack of integers after rearranged: "+s);
}
//Define the main() method
public static void main(String[] args)
{
//Create object for Stack
Stack<Integer> s1=new Stack<Integer>();
//Add the integers into the stack
s1.push(3);
s1.push(-5);
s1.push(1);
s1.push(2);
s1.push(-4);
//Print the stack of integers
System.out.println("The elements of a stack of integers: "+s1);
//Call the method
splitStack(s1);
}
}
Output:
The elements of a stack of integers: [3, -5, 1, 2, -4]
The elements of a stack of integers after rearranged: [-4, -5, 2, 1, 3]
Want to see more full solutions like this?
Chapter 14 Solutions
Building Java Programs: A Back To Basics Approach, Loose Leaf Edition (5th Edition)
- I need to make a parallel version of this sequential codearrow_forwardI need to make a parallel version of this sequential code.arrow_forwardBenefits of using arrays as instance variables: What are the advantages of incorporating arrays as instance variables within a class? Initializing and managing arrays: How do you initialize and manage arrays within class constructors and mutators (setters)? Example of using arrays as instance variables: Share an example where you have used arrays as instance variables and discuss its application in a real-world scenario. Common mistakes with arrays as instance variables: What are some common mistakes to avoid when working with arrays as instance variables? Information hiding violations: What is the potential violation of information hiding when using arrays as instance variables? How can this be resolved?arrow_forward
- Do you think that computers should replace teachers? Give three references with your answer.arrow_forwardIs online learning or face to face learning better to teach students around the around the world? Give reasons for your answer and provide two references with your response. What are benefits of both online learning and face to face learning ? Give two references with your answer. How does online learning and face to face learning affects students around the world? Give two references with your answer.arrow_forwardExplain Five reasons if computers should replace teachers. Provide three references with your answer. List three advantages and three disadvantages face to face learning and online learning may have on children. Provide two references with your answer.arrow_forward
- You were requested to design IP addresses for the following network using the address block 10.10.10.0/24. Specify an address and net mask for each network and router interfacearrow_forwardFor the following network, propose routing tables in each of the routers R1 to R5arrow_forwardFor the following network, propose routing tables in each of the routers R1 to R5arrow_forward
- Using R language. Here is the information link. http://www.cnachtsheim-text.csom.umn.edu/Kutner/Chapter%20%206%20Data%20Sets/CH06PR18.txtarrow_forwardUsing R languagearrow_forwardHow can I type the Java OOP code by using JOptionPane with this following code below: public static void sellCruiseTicket(Cruise[] allCruises) { //Type the code here }arrow_forward
- Database System ConceptsComputer ScienceISBN:9780078022159Author:Abraham Silberschatz Professor, Henry F. Korth, S. SudarshanPublisher:McGraw-Hill EducationStarting Out with Python (4th Edition)Computer ScienceISBN:9780134444321Author:Tony GaddisPublisher:PEARSONDigital Fundamentals (11th Edition)Computer ScienceISBN:9780132737968Author:Thomas L. FloydPublisher:PEARSON
- C How to Program (8th Edition)Computer ScienceISBN:9780133976892Author:Paul J. Deitel, Harvey DeitelPublisher:PEARSONDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781337627900Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningProgrammable Logic ControllersComputer ScienceISBN:9780073373843Author:Frank D. PetruzellaPublisher:McGraw-Hill Education





