Anda di halaman 1dari 7

UNIVERSITAS KRISNADWIPAYANA

FAKULTAS TEKNIK
Alamat : Kampus UNKRIS Jatiwaringin, P.O. Box. 7774/Jat.CM
Telp: (021) 8462229-31, langsung 84998529 fax. (021) 84998529
JAKARTA 13077

UJIAN TENGAH SEMESTER GENAP 2020/2021

Hari/ Tanggal : Rabu / 21 April 2021


Mata Kuliah : Struktur Data
Program Studi/Smt/Kelas : Teknik Informatika / 2 / A1
Dosen Penguji : Tri Hartati, S.Kom, M.Kom
Waktu Ujian : 150 Menit (13.00 – 15.30)
Sifat Ujian : Open Modul

SOAL 1. (50%)
Perhatikan gambar berikut :

Uraikan urutan pembacaan informasi dan pelepasan informasi yang terkandung dalam
ilustrasi struktur data queue diatas!
F = Front, E = End

SOAL 2. (50%)
Buatlah program python (tema program bebas) dengan menggunakan prinsip struktur data
Queue!

Mengetahui, Dosen Ybs


Kaprodi Teknik Informatika

(Nuke L Chusna, SSi, MKom) (Tri Hartati, S.Kom, M.Kom)


NIDN. 0315966706 / NIP. 1506672404 NIDN: 0403048207
UNIVERSITAS KRISNADWIPAYANA
FAKULTAS TEKNIK
Alamat : Kampus UNKRIS Jatiwaringin, P.O. Box. 7774/Jat.CM
Telp: (021) 8462229-31, langsung 84998529 fax. (021) 84998529
JAKARTA 13077

Jawab :

1.
n-1

LOKE 0 1 2 3 4 5 6 7 8 9
T
B C D

Ilustrasi diatas menggunakan linear queue atau yang berarti antrian lurus.

Keluar Masuk

B C D
Front End

Pada gambar di atas terlihat 3 kucing berbaris antri. kucing itu akan keluar dari kandang dengan dua sisi pintu,
maka kucing yang pertama masuk dari pintu belakang (kucing B) akan keluar terlebih dahulu melalui pintu
depan, sedangkan singa D masuk terakhir maka akan keluar terakhir pula.

Front   = Depan

End     = Belakang

Ilustrasi linear queue menggunakan array satu dimensi.

n-1

LOKE 0 1 2 3 4 5 6 7 8 9
T
B C D

Mengetahui, Dosen Ybs


Kaprodi Teknik Informatika

(Nuke L Chusna, SSi, MKom) (Tri Hartati, S.Kom, M.Kom)


NIDN. 0315966706 / NIP. 1506672404 NIDN: 0403048207
UNIVERSITAS KRISNADWIPAYANA
FAKULTAS TEKNIK
Alamat : Kampus UNKRIS Jatiwaringin, P.O. Box. 7774/Jat.CM
Telp: (021) 8462229-31, langsung 84998529 fax. (021) 84998529
JAKARTA 13077

F E

n-1

LOKE 0 1 2 3 4 5 6 7 8 9
T
C D

F E

Pada saat B keluar maka C bergeser ke tempat B semula. Begitu pun seterusnya D menempati
tempat C. Dengan demikian seterusnya hingga hasilnya menjadi sebagai berikut.

n-1

LOKE 0 1 2 3 4 5 6 7 8 9
T
C D

F E

Pergeseran dengan cara di atas membutuhkan waktu cukup lama karena masing-masing
elemen harus berpindah. Cara lain yang dapat ditempuh adalah dengan menggeser loket.
Perhatikan urutan gambar ilustrasi berikut.

n-1

LOKE 0 1 2 3 4 5 6 7 8 9
T
B C D

Mengetahui, Dosen Ybs


Kaprodi Teknik Informatika

(Nuke L Chusna, SSi, MKom) (Tri Hartati, S.Kom, M.Kom)


NIDN. 0315966706 / NIP. 1506672404 NIDN: 0403048207
UNIVERSITAS KRISNADWIPAYANA
FAKULTAS TEKNIK
Alamat : Kampus UNKRIS Jatiwaringin, P.O. Box. 7774/Jat.CM
Telp: (021) 8462229-31, langsung 84998529 fax. (021) 84998529
JAKARTA 13077

F E

n-1

LOKE 0 1 2 3 4 5 6 7 8 9
T
C D

F E

n-1

LOKE 1 2 3 4 5 6 7 8 9
T
C D

F E

n-1

0 LOKE 2 3 4 5 6 7 8 9
T
D

F E

n-1

0 LOKE 2 3 4 5 6 7 8 9
T

Mengetahui, Dosen Ybs


Kaprodi Teknik Informatika

(Nuke L Chusna, SSi, MKom) (Tri Hartati, S.Kom, M.Kom)


NIDN. 0315966706 / NIP. 1506672404 NIDN: 0403048207
UNIVERSITAS KRISNADWIPAYANA
FAKULTAS TEKNIK
Alamat : Kampus UNKRIS Jatiwaringin, P.O. Box. 7774/Jat.CM
Telp: (021) 8462229-31, langsung 84998529 fax. (021) 84998529
JAKARTA 13077

F E
n-1

0 1 LOKE 3 4 5 6 7 8 9
T

E F

Pada ilustrasi di atas antrian sudah kosong sehingga F>E Atau F = R+1

Lalu ketika semua antrian sudah dilayani maka keadaan perlu dikembalikan ke
keadaan semula (di- Reset). Seperti contoh berikut :

Sebelum direset :

0 1 2 3 4 5 6 7 8 LOKET

E F

Setelah direset :

n-1

Mengetahui, Dosen Ybs


Kaprodi Teknik Informatika

(Nuke L Chusna, SSi, MKom) (Tri Hartati, S.Kom, M.Kom)


NIDN. 0315966706 / NIP. 1506672404 NIDN: 0403048207
UNIVERSITAS KRISNADWIPAYANA
FAKULTAS TEKNIK
Alamat : Kampus UNKRIS Jatiwaringin, P.O. Box. 7774/Jat.CM
Telp: (021) 8462229-31, langsung 84998529 fax. (021) 84998529
JAKARTA 13077

LOKET 0 1 2 3 4 5 6 7 8 9

E F

2.

from collections import deque

q = deque()

for i in range(7):
q.append(i)

for i in range(7,15):
q.appendleft(i)

print(q)

Mengetahui, Dosen Ybs


Kaprodi Teknik Informatika

(Nuke L Chusna, SSi, MKom) (Tri Hartati, S.Kom, M.Kom)


NIDN. 0315966706 / NIP. 1506672404 NIDN: 0403048207
UNIVERSITAS KRISNADWIPAYANA
FAKULTAS TEKNIK
Alamat : Kampus UNKRIS Jatiwaringin, P.O. Box. 7774/Jat.CM
Telp: (021) 8462229-31, langsung 84998529 fax. (021) 84998529
JAKARTA 13077

print('removing {} from left of the queue'.format(q.popleft()))


print('removing {} from right of the queue'.format(q.pop()))
print('removing {} from left of the queue'.format(q.popleft()))
print('removing {} from right of the queue'.format(q.pop()))

print('Final result is :',q)

Mengetahui, Dosen Ybs


Kaprodi Teknik Informatika

(Nuke L Chusna, SSi, MKom) (Tri Hartati, S.Kom, M.Kom)


NIDN. 0315966706 / NIP. 1506672404 NIDN: 0403048207

Anda mungkin juga menyukai