📖 Scenario: You are managing a line of customers waiting to buy tickets at a movie theater. Each new customer joins the end of the line.
🎯 Goal: Build a simple queue using an array and add a new customer to the end of the queue using the enqueue operation.
📋 What You'll Learn
Create an array called queue with initial customers
Create a variable called newCustomer with the name of the new customer
Add the newCustomer to the end of the queue using the enqueue operation
Print the final state of the queue
💡 Why This Matters
🌍 Real World
Queues are used in real life to manage lines, like customers waiting for tickets or tasks waiting to be processed.
💼 Career
Understanding queues and enqueue operations is important for software developers working with data structures, task scheduling, and event handling.
Progress0 / 4 steps
1
Create the initial queue
Create an array called queue with these exact customers in order: 'Alice', 'Bob', 'Charlie'
DSA Typescript
Hint
Use square brackets [] to create an array and include the names as strings separated by commas.
2
Add a new customer name
Create a variable called newCustomer and set it to the string 'David'
DSA Typescript
Hint
Use const newCustomer = 'David'; to create the variable.
3
Enqueue the new customer
Use the push method on queue to add newCustomer to the end of the queue
DSA Typescript
Hint
Use queue.push(newCustomer); to add the new customer to the queue.
4
Print the final queue
Print the queue array to show the final order of customers
DSA Typescript
Hint
Use console.log(queue); to print the queue.
Practice
(1/5)
1. What does the enqueue operation do in a queue data structure?
easy
A. Adds an element to the end of the queue
B. Removes an element from the front of the queue
C. Checks if the queue is empty
D. Returns the size of the queue
Solution
Step 1: Understand the queue structure
A queue works like a line where elements are added at the back and removed from the front.
Step 2: Define the enqueue operation
Enqueue means adding a new element to the end of the queue, so it waits its turn.
Final Answer:
Adds an element to the end of the queue -> Option A
Quick Check:
Enqueue = Add at end [OK]
Hint: Enqueue means add at the back of the queue [OK]
Common Mistakes:
Confusing enqueue with dequeue (removal)
Thinking enqueue checks queue size
Assuming enqueue removes elements
2. Which of the following is the correct TypeScript syntax to add an element 5 to a queue represented by an array queue?
easy
A. queue.pop(5);
B. queue.push(5);
C. queue.shift(5);
D. queue.unshift(5);
Solution
Step 1: Identify array methods for queue operations
In TypeScript, push adds an element at the end, which matches enqueue.
Step 2: Match enqueue with correct method
pop removes from end, shift removes from front, unshift adds at front. So only push adds at the end.
Final Answer:
queue.push(5); -> Option B
Quick Check:
Enqueue uses push() to add at end [OK]
Hint: Use push() to add at end of array for enqueue [OK]
Common Mistakes:
Using pop() which removes instead of adds
Using shift() or unshift() which affect front of queue
Confusing push() with unshift()
3. What will be the state of the queue after executing the following TypeScript code?
let queue: number[] = [10, 20, 30];
queue.push(40);
queue.push(50);
medium
A. [10, 20, 30, 40, 50]
B. [50, 40, 10, 20, 30]
C. [10, 20, 30]
D. [40, 50]
Solution
Step 1: Start with initial queue
The queue starts as [10, 20, 30].
Step 2: Apply enqueue operations
First, push(40) adds 40 at the end: [10, 20, 30, 40]. Then push(50) adds 50 at the end: [10, 20, 30, 40, 50].
Final Answer:
[10, 20, 30, 40, 50] -> Option A
Quick Check:
push adds at end, final queue = [10,20,30,40,50] [OK]
Hint: push() adds elements at the end in order [OK]
Common Mistakes:
Thinking push adds at front
Ignoring second push operation
Confusing push with pop or shift
4. Identify the error in the following TypeScript code that tries to enqueue an element 25 to a queue represented by an array queue:
let queue: number[] = [5, 10, 15];
queue.pop(25);
medium
A. The element 25 should be added using shift
B. pop adds element at the front, so wrong method
C. The queue array is not initialized properly
D. pop does not take arguments and removes from the end
Solution
Step 1: Understand pop() method behavior
pop() removes the last element from the array and does not accept any arguments.
Step 2: Identify misuse of pop()
Calling pop(25) is incorrect because pop() cannot add elements; it only removes.
Final Answer:
pop does not take arguments and removes from the end -> Option D
Quick Check:
pop() removes, push() adds [OK]
Hint: pop() removes last element; push() adds at end [OK]
Common Mistakes:
Using pop() to add elements
Confusing shift() and pop()
Passing arguments to pop()
5. You have a queue implemented as an array in TypeScript. You want to enqueue multiple elements [100, 200, 300] at once while preserving order. Which code snippet correctly enqueues all elements in order?
hard
A. queue.unshift(100, 200, 300);
B. queue.push([100, 200, 300]);
C. queue.push(100, 200, 300);
D. queue.pop(100); queue.pop(200); queue.pop(300);
Solution
Step 1: Understand push with multiple arguments
push() can take multiple arguments and adds them in order at the end of the array.
Step 2: Analyze each option
queue.push(100, 200, 300); adds 100, 200, 300 in order at the end. queue.push([100, 200, 300]); adds a single array element, nesting the array. queue.unshift(100, 200, 300); adds elements at the front, reversing order. queue.pop(100); queue.pop(200); queue.pop(300); uses pop which removes elements, not adds.
Final Answer:
queue.push(100, 200, 300); -> Option C
Quick Check:
push(...items) adds all at end in order [OK]
Hint: Use push with multiple args to enqueue many elements [OK]
Common Mistakes:
Using push with array argument nests array
Using unshift adds at front, reversing order
Using pop to add elements
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.