+1 vote
in Data Structures & Algorithms I by (111k points)
A double-ended queue supports operations like adding and removing items from both the sides of the queue. They support four operations like addFront(adding item to top of the queue), addRear(adding item to the bottom of the queue), removeFront(removing item from the top of the queue) and removeRear(removing item from the bottom of the queue). You are given only stacks to implement this data structure. You can implement only push and pop operations. What’s the time complexity of performing addFront and addRear? (Assume ‘m’ to be the size of the stack and ‘n’ to be the number of elements)

(a) O(m) and O(n)

(b) O(1) and O(n)

(c) O(n) and O(1)

(d) O(n) and O(1)

Please explain.

1 Answer

+1 vote
by (679k points)
selected by
Best answer
Right option is (b) O(1) and O(n)

To explain: addFront is just a normal push operation. Push operation is of O(1). Whereas addRear is of O(n) as it requires two push(pop()) operations of all elements of a stack.

Related questions

Welcome to TalkJarvis QnA, a question-answer community website for the people by the people. On TalkJarvis QnA you can ask your doubts, curiosity, questions and whatever going in your mind either related to studies or others. Experts and people from different fields will answer.

Most popular tags

biology – class 12 biology – class 11 construction & building materials chemistry – class 12 electronic devices & circuits network theory data structures & algorithms ii cell biology ic engine insurance finance money computational fluid dynamics engineering physics i discrete mathematics chemistry – class 11 aerodynamics casting-forming-welding i engineering mathematics operating system casting-forming-welding ii engineering drawing mysql engineering geology digital circuits wireless mobile energy management electrical measurements digital communications cyber security analytical instrumentation embedded systems electric drives cytogenetics computer fundamentals life sciences basic civil engineering advanced machining iot design of electrical machines physics – class 12 applied chemistry dairy engineering basic chemical engineering cloud computing microprocessor bioinformatics aircraft design aircraft maintenance software engineering drug biotechnology digital signal processing biochemistry data structures & algorithms i automotive engine design avionics engineering material & metallurgy energy engineering cognitive radio unix electrical machines biomedical instrumentation object oriented programming electromagnetic theory power electronics analog communications bioprocess engineering civil engineering drawing engineering metrology physics – class 11 mathematics – class 12 engineering chemistry i basic electrical engineering unit processes mongodb signals and systems cryptograph & network security hadoop mathematics – class 11 engineering physics ii html control systems engineering mechanics antennas analog circuits computer network java sql server javascript concrete technology chemical process calculation artificial intelligence design of steel structures c++ database management computer architecture engineering chemistry ii corrosion engineering chemical technology dc machines