Implement Stack With Linked List

You need to implement the Stack data structure using a Singly Linked List.

Create a class named 'Stack' which supports the following operations(all in O(1) time):


getSize: Returns an integer. Gets the current size of the stack

isEmpty: Returns a boolean. Gets whether the stack is empty

push: Returns nothing. Accepts an integer. Puts that integer at the top of the stack

pop: Returns nothing. Removes the top element of the stack. Does nothing if the stack is empty.

getTop: Returns an integer. Gets the top element of the stack. Returns -1 if the stack is empty

Input format:

The first line of the input will contain the number of queries, 'T'.
The next 'T' lines will contain the queries. They can be of the following five types:

'1': Print the current size of the stack

'2': Find whether the stack is empty. Print "true" if yes, "false" otherwise

'3': This query will be given like "3 val" where val can be any non-negative integer. Put val on the top of the stack. Print nothing

'4': Remove the top element of the stack. Print nothing

'5': Print the top element of the stack. If the stack is empty, print -1

Output format:

For each test case, print the result of each query on a separate line. If the query is '3' or '4', print nothing (not even an empty line)

The output of each test case will be printed in a separate line.

Note:

You do not need to print anything, it has already been taken care of. Just implement the given function.
Constraints:
1 <= T <= 10^6
1 <= Q <= 5
1 <= Data <= 2^31 - 1

Where 'Q' is the type of query and 'Data' being the values getting pushed and popped from the stack. 

Time Limit: 1sec
Be the first one to answer
Add answer anonymously...
Hughes Systique Corporation Frontend Developer Intern Interview Questions
Stay ahead in your career. Get AmbitionBox app
qr-code
Helping over 1 Crore job seekers every month in choosing their right fit company
65 L+

Reviews

4 L+

Interviews

4 Cr+

Salaries

1 Cr+

Users/Month

Contribute to help millions
Get AmbitionBox app

Made with ❤️ in India. Trademarks belong to their respective owners. All rights reserved © 2024 Info Edge (India) Ltd.

Follow us
  • Youtube
  • Instagram
  • LinkedIn
  • Facebook
  • Twitter