O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.
Próximos SlideShares
Carregando em…5
×

# Deque and its applications

35.468 visualizações

• Full Name
Comment goes here.

Are you sure you want to Yes No
Your message goes here
• I think undo- redo operation is an application of stacks

Tem certeza que deseja  Sim  Não
Insira sua mensagem aqui

### Deque and its applications

1. 1. PRESENTED BY Chandramohan.R Manoranjani.K Racchana.K Rosalin Mary.S Saddam Hussain .J
2. 2. Double-Ended Queue A Deque or deck is a double-ended queue. Allows elements to be added or removed on either the ends.
3. 3. TYPES OF DEQUE Input restricted Deque Elements can be inserted only at one end. Elements can be removed from both the ends. Output restricted Deque Elements can be removed only at one end. Elements can be inserted from both the ends.
4. 4. Deque as Stack and QueueAs STACK When insertion and deletion is made at the same side.As Queue When items are inserted at one end and removed at the other end.
5. 5. OPERATIONS IN DEQUE Insert element at back Insert element at front Remove element at front Remove element at back
6. 6. Insert_front insert_front() is a operation used to push an element into the front of the Deque. PUSH 0 1 2 3 4 5 7 FRONT REAR 0 1 2 3 4 5 7
7. 7. Algorithm Insert_frontstep1. Startstep2. Check the queue is full or not as if (r == max-1) &&(f==0)step3. If false update the pointer f as f= f-1step4. Insert the element at pointer f as Q[f] = elementstep5. Stop
8. 8. Insert_back insert_back() is a operation used to push an element at the back of a Deque. 1 2 3 4 5 7 PUSH 9 FRONT REAR 1 2 3 4 5 7
9. 9. Alogrithm insert_backStep1: StartStep2: Check the queue is full or not as if (r == max-1) &&(f==0) if yes queue is fullStep3: If false update the pointer r as r= r+1Step4: Insert the element at pointer r as Q[r] = elementStep5: Stop
10. 10. Remove_front remove_front() is a operation used to pop an element on front of the Deque. POP 1 2 3 4 5 7 FRONT REAR 2 3 4 5 7
11. 11. Alogrithm Remove_frontStep1: StartStep2: Check the queue is empty or not as if (f == r) if yes queue is empty.Step3: If false update pointer f as f = f+1 and delete element at position f as element = Q[f]Step4: If ( f== r) reset pointer f and r as f = r = -1Step5: Stop
12. 12. Remove_back• remove_front() is a operation used to pop an element on frontof the Deque. 1 2 3 4 5 7 POP FRONT REAR 1 2 3 4 5
13. 13. Alogrithm Remove_backstep1. Startstep2. Check the queue is empty or not as if (f == r) if yes queue is emptystep3. If false delete element at position r as element = Q[r]step4. Update pointer r as r = r-1step5. If (f == r ) reset pointer f and r as f = r= -1step6. Stop
14. 14. Empty It is used to test weather the Deque is empty or not.
15. 15. APPLICATIONS OF DEQUEPalindrome-checker
16. 16. APPLICATIONS OF DEQUEA-Steal job scheduling algorithm The A-Steal algorithm implements task scheduling for several processors(multiprocessor scheduling). The processor gets the ﬁrst element from the deque. When one of the processor completes execution of its own threads it can steal a thread from another processor. It gets the last element from the deque of another processor and executes it.
17. 17. OTHER APPLICATIONS OF DEQUE Undo-Redo operations in Software applications.
18. 18. Thank You