Syntax fix
This commit is contained in:
parent
ae7aba0b44
commit
e00d95c417
BIN
data_structures/Stacks/Stacks.class
Normal file
BIN
data_structures/Stacks/Stacks.class
Normal file
Binary file not shown.
@ -3,13 +3,13 @@ import java.util.ArrayList;
|
||||
/**
|
||||
* This class implements a Stack using two different implementations.
|
||||
* Stack is used with a regular array and Stack2 uses an ArrayList.
|
||||
*
|
||||
*
|
||||
* A stack is exactly what it sounds like. An element gets added to the top of
|
||||
* the stack and only the element on the top may be removed. This is an example
|
||||
* of an array implementation of a Stack. So an element can only be added/removed
|
||||
* from the end of the array. In theory stack have no fixed size, but with an
|
||||
* array implementation it does.
|
||||
*
|
||||
*
|
||||
* @author Unknown
|
||||
*
|
||||
*/
|
||||
@ -23,7 +23,7 @@ class Stack{
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
*
|
||||
* @param size Size of the Stack
|
||||
*/
|
||||
public Stack(int size){
|
||||
@ -34,7 +34,7 @@ class Stack{
|
||||
|
||||
/**
|
||||
* Adds an element to the top of the stack
|
||||
*
|
||||
*
|
||||
* @param value The element added
|
||||
*/
|
||||
public void push(int value){
|
||||
@ -42,13 +42,13 @@ class Stack{
|
||||
top++;
|
||||
stackArray[top] = value;
|
||||
}else{
|
||||
System.out.prinln("The stack is full, can't insert value");
|
||||
System.out.println("The stack is full, can't insert value");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Removes the top element of the stack and returns the value you've removed
|
||||
*
|
||||
*
|
||||
* @return value popped off the Stack
|
||||
*/
|
||||
public int pop(){
|
||||
@ -62,7 +62,7 @@ class Stack{
|
||||
|
||||
/**
|
||||
* Returns the element at the top of the stack
|
||||
*
|
||||
*
|
||||
* @return element at the top of the stack
|
||||
*/
|
||||
public int peek(){
|
||||
@ -76,7 +76,7 @@ class Stack{
|
||||
|
||||
/**
|
||||
* Returns true if the stack is empty
|
||||
*
|
||||
*
|
||||
* @return true if the stack is empty
|
||||
*/
|
||||
public boolean isEmpty(){
|
||||
@ -85,16 +85,16 @@ class Stack{
|
||||
|
||||
/**
|
||||
* Returns true if the stack is full
|
||||
*
|
||||
*
|
||||
* @return true if the stack is full
|
||||
*/
|
||||
public boolean isFull(){
|
||||
return(top+1 == maxSize);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Deletes everything in the Stack
|
||||
*
|
||||
*
|
||||
* Doesn't delete elements in the array
|
||||
* but if you call push method after calling
|
||||
* makeEmpty it will overwrite previous
|
||||
@ -108,41 +108,41 @@ class Stack{
|
||||
/**
|
||||
* This is an ArrayList Implementation of stack, Where size is not
|
||||
* a problem we can extend the stack as much as we want.
|
||||
*
|
||||
*
|
||||
* @author Unknown
|
||||
*
|
||||
*/
|
||||
class Stack2{
|
||||
/** ArrayList representation of the stack */
|
||||
ArrayList<Integer> stackList;
|
||||
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*/
|
||||
Stack2(){
|
||||
stackList=new ArrayList<>();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Adds value to the end of list which
|
||||
* is the top for stack
|
||||
*
|
||||
*
|
||||
* @param value value to be added
|
||||
*/
|
||||
void push(int value){
|
||||
stackList.add(value);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Pops last element of list which is indeed
|
||||
* the top for Stack
|
||||
*
|
||||
*
|
||||
* @return Element popped
|
||||
*/
|
||||
int pop(){
|
||||
|
||||
|
||||
if(!isEmpty()){ // checks for an empty Stack
|
||||
|
||||
|
||||
int popValue=stackList.get(stackList.size()-1);
|
||||
stackList.remove(stackList.size()-1); //removes the poped element from the list
|
||||
return popValue;
|
||||
@ -151,25 +151,25 @@ class Stack2{
|
||||
System.out.print("The stack is already empty ");
|
||||
return -1;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Checks for empty Stack
|
||||
*
|
||||
*
|
||||
* @return true if stack is empty
|
||||
*/
|
||||
boolean isEmpty(){
|
||||
if(stackList.isEmpty())
|
||||
return true;
|
||||
|
||||
|
||||
else return false;
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Top element of stack
|
||||
*
|
||||
*
|
||||
* @return top element of stack
|
||||
*/
|
||||
int peek(){
|
||||
@ -179,14 +179,14 @@ class Stack2{
|
||||
|
||||
/**
|
||||
* This class implements the Stack and Stack2 created above
|
||||
*
|
||||
*
|
||||
* @author Unknown
|
||||
*
|
||||
*/
|
||||
public class Stacks{
|
||||
/**
|
||||
* Main method
|
||||
*
|
||||
*
|
||||
* @param args Command line arguments
|
||||
*/
|
||||
public static void main(String args[]){
|
||||
@ -196,21 +196,21 @@ public class Stacks{
|
||||
myStack.push(8);
|
||||
myStack.push(2);
|
||||
myStack.push(9);
|
||||
|
||||
|
||||
System.out.println("*********************Stack Array Implementation*********************");
|
||||
System.out.println(myStack.isEmpty()); //will print false
|
||||
System.out.println(myStack.isFull()); //will print true
|
||||
System.out.println(myStack.peek()); //will print 9
|
||||
System.out.println(myStack.pop()); //will print 9
|
||||
System.out.println(myStack.peek()); // will print 2
|
||||
|
||||
|
||||
Stack2 myStack2 = new Stack2(); //Declare a stack of maximum size 4
|
||||
//Populate the stack
|
||||
myStack2.push(5);
|
||||
myStack2.push(8);
|
||||
myStack2.push(2);
|
||||
myStack2.push(9);
|
||||
|
||||
|
||||
System.out.println("*********************Stack List Implementation*********************");
|
||||
System.out.println(myStack2.isEmpty()); //will print false
|
||||
System.out.println(myStack2.peek()); //will print 9
|
||||
|
Loading…
Reference in New Issue
Block a user