Stacks And Queues

Go to Problems

Queue Implementation Details

C :

Array / Linked list based implementation as shown in earlier lessons.

C++ :

C style array queue works in C++ as well. However, C++ provides a library implementation of queue as well.

Queue declaration : :
    queue<int> A; // declares an empty queue. 
Push
    A.push(newElement); // Pushes a new element. O(1)
Pop
    A.pop(); // O(1) pop
isEmpty
    A.empty() // O(1) 
Size
    A.size(); // O(1) 
Front
    A.front(); // O(1). Gives the first element. 
JAVA :

Java has a queue similar to C++.

Queue declaration : :
    Queue A = new LinkedList(); 
Push
    A.add(new Integer(newElement)); // Pushes a new element. O(1)
Pop
    A.poll(); // O(1) pop
isEmpty
     A.isEmpty() // O(1)
Size
    A.size(); // O(1)
Front
    A.peek(); // O(1). Gives the top element. 
PYTHON :

We can use deque as a queue in python.

Queue declaration : :
    A = deque() # declares an empty queue. O(1)
Push
    A.append(newElement) # Put the new Element on the end of the array. O(1).
Pop
    A.popleft() # Pops out the front of the queue
isEmpty
    return (len(A) == 0); # Check if size is 0. O(1)
Size
    return len(A); # O(1)  
Front
    A[0] # O(1)

Serious about Learning Programming ?

Learn this and a lot more with Scaler Academy's industry vetted curriculum which covers Data Structures & Algorithms in depth.

Stacks And Queues Problems

Stack simple
Problem Score Companies Time Status
Balanced Parantheses! 200 15:59
Simplify Directory Path 250
54:00
Redundant Braces 300 42:41
Min Stack 400 43:31
Cleverstack
Problem Score Companies Time Status
MAXSPPROD 200
88:22
Nearest Smaller Element 350 41:37
Largest Rectangle in Histogram 450 65:52
Bfs
Problem Score Companies Time Status
Hotel Service 200 49:11
Stack math
Problem Score Companies Time Status
Evaluate Expression 400
32:46
Rain Water Trapped 400 59:06
lock
Topic Bonus
Bonus will be unlocked after solving min. 1 problem from each bucket