//Pushing
// Big O notation: O(1)
//takes in value to insert
//initially counter is set to -1
if counter + 1 < array length
array[++counter] = value
//Popping
// Big O notation: O(1)
//takes in nothing returns the popped value
if counter equals -1
return 0
return array[counter--]
//Peeking
// Big O notation: O(1)
//takes in nothing return value in top node
if counter equals -1
return -1
return array[counter]