From 201c014d8b305ac47a718e7c60cca9493efe08a9 Mon Sep 17 00:00:00 2001 From: Suhani Gupta <144280247+suhanigupta23@users.noreply.github.com> Date: Tue, 20 Feb 2024 15:41:02 +0530 Subject: [PATCH] Building dynamic stacks in java --- building_dynamic_stacks.java | 112 +++++++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) create mode 100644 building_dynamic_stacks.java diff --git a/building_dynamic_stacks.java b/building_dynamic_stacks.java new file mode 100644 index 0000000..f180aaf --- /dev/null +++ b/building_dynamic_stacks.java @@ -0,0 +1,112 @@ +//HERE WE BUIKLD OUR OWN DYNAMIC STACK JUST LIKE DYNAMIC ARRAY WHERE WE DO NOT HAVE ANY LIMITATION IF SIZE OF THE STACK +import java.io.*; +import java.util.*; + +public class Main { + + public static class CustomStack { + int[] data; + int tos; + //tos taken to recieve the data tos++ and the d[tos]=value + + public CustomStack(int cap) { + data = new int[cap]; + tos = -1; + + } + + int size() { + return tos+1; + + } + + void display() { + for(int i=tos;i>0;i--) + { + System.out.print(data[i]+" "); + } + + System.out.println(); + + } + + void push(int val) { + if(tos==data.length-1) + { + int [] ndata=new int[2*data.length]; + // a new data stack made of the double size of the previous data stack + for(int i=0;i