ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
Pert 10
Untuk penyisipan (INSERT) hanya dapat
dilakukan pada satu sisi yaitu sisi belakang
(REAR), sedangkan untuk penghapusan
(REMOVE) pada sisi depan (FRONT) dari list.
hapus elemen

1

2 …….. ke – n

front

sisip elemen

rear

Di bawah ini diperlihatkan suatu queue yang akan
menempati N elemen array memori, serta cara
pengurangan (delete) dan penambahan (added) elemen
pada queue tersebut.
Front : 1
Rear : 4

A
1

B

C

D

2

3

4

………
5

….

N
Remove (Q)
Front : 2
Rear : 4

B

D

2

3

4

5

B

C

D

E

2

1

C

………

3

4

5

….

N

INSERT(INSERT(E),F)
Front : 2
Rear : 6
1

F
….

N

Remove (Q)
Front : 3
Rear : 6

C
1

2

D

E

3

4

5

F
….

N
Front
Q(1)

Q(2)

Q(m)

Q(f)

Q(f+1)

…….

Q(r)

Rear
Contoh :

Suatu queue akan menempati lokasi sebanyak 5 array
memori, dengan urutan operasi sebagai berikut :

1.Create(Q) F = 0
R = 0
2.Insert A,B,C F = 1
R = 3

3.Remove(Q) F = 2
R = 3
4.Insert D,E

F = 2
R = 5

1

2

3

A

B

C

1

2

3

B

C

2

1

5

4

5

3

4

5

B

1

4

C

D

E

2

3

4

5
5.Remove (Remove((Q))

F = 4
R = 5
D
1

6.Insert F

F = 4
R = 1

7.Remove(Q) F = 5
R = 1
8.Insert G,H,K F = 5
R = 4

3

F
1

2

3

4

5

D

2

E

E

4

5

F

E

1

2

3

4

5

F

G

H

K

E

1

2

3

4

5
9.Insert L

F = 5
R = 4

G

H

K

E

1

2

3

4

5

G

(OverFlow)

F

H

K

2

3

4

5

G

H

K

L

2

3

4

5

K

L

4

5

10.Remove (Remove((Q))

F = 2
R = 4
1

11.Insert L

F = 2
R = 5

1

12.Remove (Remove((Q))

F = 4
R = 5
1

2

3
13.Remove (Remove((Q))

F = 0
R = 0
1

14.Remove(Q) F = 0
R = 0
(UnderFlow)

2

3

4

F
1

5

E
2

3

4

5
DEQUEUE adalah suatu List Linier, yang
penambahan dan penghapusan elemen-nya
dapat dilakukan pada kedua sisi ujung List, tetapi
tidak dapat dilakukan ditengah-tengah list. Dari
sini dapat kita katakan bahwa Dequeue adalah
suatu Queue ganda atau Double Ended Queue.

Deque menggunakan dua pointer penunjuk
yaitu :
LEFT : petunjuk untuk elemen pada posisi kiri
RIGHT : petunjuk untuk elemen pada posisi
kanan
Left : 4
Right : 7

Left : 7
Right : 2

AAA
1

2

YYY

2

CCC

DDD

4

5

6

7

ZZZ

1

3

BBB

8

WWW XXX
3

4

5

6

7

8
Input-Restricted-Deque
adalah deque yang operasi pemasukan elemen datanya
hanya dapat dilakukan di satu ujung kanannya (RIGHT),
tetapi dapat menghapus dari kedua ujungnya ( LEFT
dan RIGHT).
Output-Restricted-Deque
adalah deque yang operasi pemasukan elemen datanya
dapat dilakukan melalui kedua ujungnya (LEFT dan
RIGHT), tetapi hanya dapat menghapus dari ujung
kanannya(RIGHT).
Left : 2
Right : 4

……

A

B

C

………

……..

1

2

3

4

5

6

dilakukan operasi berturut-turut :
1. F is added to the Right of the deque
2. 2 item on the Right are deleted
3. K, L, M are added to the Left
4. One item on the Left is deleted
5. R is added to the Left
6. S is added to the Right
7. T is added to the Right
Jawab :
1. ---, A , C , D , F , --2. ---, A , C , ---,---,--3. K , A , C ,---, M , L
4. K , A , C ,---,---, L
5. K , A , C ,---, R , L
6. K , A , C , S , R , L
7. LEFT = RIGHT+1 , Queue is Full Then
OVERFLOW
Diketahui Circular Dequeue dengan 6 array memori :
Front : 2, Rear : 4, Queue : __,R,I,N,__,__
Jika tand __ merupakan lokasi memori yang kosong
lakukan operasi berturut – turut :
a.
Masukkan A di kanan dari dequeue
b.
Hapus dua elemen dari kanan
c.
Masukkan N,O dan V dari kiri dequeue
d.
Hapus satu elemen dari kiri
e.
Masukkan I dari kiri dequeue
f.
Masukkan f dari kanan dequeue
g.
Masukkan U dari kanan dequeue

More Related Content

Pert 10

  • 2. Untuk penyisipan (INSERT) hanya dapat dilakukan pada satu sisi yaitu sisi belakang (REAR), sedangkan untuk penghapusan (REMOVE) pada sisi depan (FRONT) dari list.
  • 3. hapus elemen 1 2 …….. ke – n front sisip elemen rear Di bawah ini diperlihatkan suatu queue yang akan menempati N elemen array memori, serta cara pengurangan (delete) dan penambahan (added) elemen pada queue tersebut. Front : 1 Rear : 4 A 1 B C D 2 3 4 ……… 5 …. N
  • 4. Remove (Q) Front : 2 Rear : 4 B D 2 3 4 5 B C D E 2 1 C ……… 3 4 5 …. N INSERT(INSERT(E),F) Front : 2 Rear : 6 1 F …. N Remove (Q) Front : 3 Rear : 6 C 1 2 D E 3 4 5 F …. N
  • 6. Contoh : Suatu queue akan menempati lokasi sebanyak 5 array memori, dengan urutan operasi sebagai berikut : 1.Create(Q) F = 0 R = 0 2.Insert A,B,C F = 1 R = 3 3.Remove(Q) F = 2 R = 3 4.Insert D,E F = 2 R = 5 1 2 3 A B C 1 2 3 B C 2 1 5 4 5 3 4 5 B 1 4 C D E 2 3 4 5
  • 7. 5.Remove (Remove((Q)) F = 4 R = 5 D 1 6.Insert F F = 4 R = 1 7.Remove(Q) F = 5 R = 1 8.Insert G,H,K F = 5 R = 4 3 F 1 2 3 4 5 D 2 E E 4 5 F E 1 2 3 4 5 F G H K E 1 2 3 4 5
  • 8. 9.Insert L F = 5 R = 4 G H K E 1 2 3 4 5 G (OverFlow) F H K 2 3 4 5 G H K L 2 3 4 5 K L 4 5 10.Remove (Remove((Q)) F = 2 R = 4 1 11.Insert L F = 2 R = 5 1 12.Remove (Remove((Q)) F = 4 R = 5 1 2 3
  • 9. 13.Remove (Remove((Q)) F = 0 R = 0 1 14.Remove(Q) F = 0 R = 0 (UnderFlow) 2 3 4 F 1 5 E 2 3 4 5
  • 10. DEQUEUE adalah suatu List Linier, yang penambahan dan penghapusan elemen-nya dapat dilakukan pada kedua sisi ujung List, tetapi tidak dapat dilakukan ditengah-tengah list. Dari sini dapat kita katakan bahwa Dequeue adalah suatu Queue ganda atau Double Ended Queue. Deque menggunakan dua pointer penunjuk yaitu : LEFT : petunjuk untuk elemen pada posisi kiri RIGHT : petunjuk untuk elemen pada posisi kanan
  • 11. Left : 4 Right : 7 Left : 7 Right : 2 AAA 1 2 YYY 2 CCC DDD 4 5 6 7 ZZZ 1 3 BBB 8 WWW XXX 3 4 5 6 7 8
  • 12. Input-Restricted-Deque adalah deque yang operasi pemasukan elemen datanya hanya dapat dilakukan di satu ujung kanannya (RIGHT), tetapi dapat menghapus dari kedua ujungnya ( LEFT dan RIGHT). Output-Restricted-Deque adalah deque yang operasi pemasukan elemen datanya dapat dilakukan melalui kedua ujungnya (LEFT dan RIGHT), tetapi hanya dapat menghapus dari ujung kanannya(RIGHT).
  • 13. Left : 2 Right : 4 …… A B C ……… …….. 1 2 3 4 5 6 dilakukan operasi berturut-turut : 1. F is added to the Right of the deque 2. 2 item on the Right are deleted 3. K, L, M are added to the Left 4. One item on the Left is deleted 5. R is added to the Left 6. S is added to the Right 7. T is added to the Right
  • 14. Jawab : 1. ---, A , C , D , F , --2. ---, A , C , ---,---,--3. K , A , C ,---, M , L 4. K , A , C ,---,---, L 5. K , A , C ,---, R , L 6. K , A , C , S , R , L 7. LEFT = RIGHT+1 , Queue is Full Then OVERFLOW
  • 15. Diketahui Circular Dequeue dengan 6 array memori : Front : 2, Rear : 4, Queue : __,R,I,N,__,__ Jika tand __ merupakan lokasi memori yang kosong lakukan operasi berturut – turut : a. Masukkan A di kanan dari dequeue b. Hapus dua elemen dari kanan c. Masukkan N,O dan V dari kiri dequeue d. Hapus satu elemen dari kiri e. Masukkan I dari kiri dequeue f. Masukkan f dari kanan dequeue g. Masukkan U dari kanan dequeue