You are on page 1of 4

SOAL UJIAN AKHIR PROGRAM STUDI ILMU KOMPUTER FMIPA UGM

YOGYAKARTA

MATA UJIAN : PENGANTAR ANALISIS ALGORITMA


WAKTU : 100 MENIT
SIFAT : OPEN BOOKS
DOSEN : DRS. JANOE HENDARTO MKOM.
TANGGAL : 15 JANUARI 2007.

1. a. Mengapa digunakan Queue (Antrian) pada algoritma RadixSort/LexicographicSort?,


Bagaimana stabilitas algoritma PegionholeSort?.

b. Untuk mengurutkan 15 data sembarang, hitung jumlah perbandingan yang dilakukan jika
digunakan :

- BubbleSort
- MergeSort (bestcase dan worstcase)
- teori (minimal seharusnya)

2. a. Tunjukkan bahwa algoritma MergeSort adalah stabil dan kemudian dengan membuat
contoh data (n = 5) tunjukkan bahwa QuickSort tidak stabil.

b. Untuk mengurutkan n data, dalam keadaan bagaimana sebaiknya menggunakan


mergesort dan dalam keadaan bagaimana sebaiknya menggunakan quicksort.

3. a. Diketahui matrix bobot dari graf berarah G sebagai berikut :

1 2 3 4
1 0 10 15 7
2 4 0 ∞ ∞
3 ∞ 8 0 5
4 ∞ 25 9 0

Dengan algoritma Floyd, tentukan matrix jarak terpendek dari setiap pasang titik/vertex
dari graf G di atas dengan menentukan matrik D untuk k=1, k=2, k=3 dan k=4.
b. Menurut saudara mana yang lebih cepat algoritma Prim atau Kruskal? Berikan alasannya.
SOAL UJIAN AKHIR PROGRAM STUDI ILMU KOMPUTER
JURUSAN MATEMATIKA FMIPA UGM YOGYAKARTA

MATA UJIAN : PENGANTAR ANALISIS ALGORITMA (SWA A)


WAKTU : 100 MENIT
SIFAT : OPEN BOOKS
DOSEN : DRS. JANOE HENDARTO MKOM.
TANGGAL : 15 JANUARI 2005.

1. Diketahui 5 matrix yang masing-masing berukuran 20x70, 70x30, 30x10, 10x100 dan 100x30

a. Dengan dynamic programming, hitung jumlah perkalian minimal yang diperlukan untuk
mengalikan 5 matrix tersebut.

b. Diketahui ada 5 jenis minuman, masing-masing mempunyai volume dan harga seperti
tabel di bawah. Dengan teknik greedy, hitung berapa rupiah nilai maksimum yang dapat
diambil dan dari jenis mana saja, jika kita dapat mengambil maksimum 1250 ml (knapsack
real).

Jenis minuman Sprite Fanta CocaCola Sirup Teh


Volume (ml) 330 275 500 300 450
Harga (Rp) 1200 900 1600 1100 1500

2. a. Untuk mengurutkan 15 data, hitung jumlah perbandingan yang dilakukan jika digunakan :

- BubbleSort
- MergeSort (bestcase dan worstcase)
- teori (minimal seharusnya)

c. Untuk mengurutkan n data, dalam keadaan bagaimana sebaiknya menggunakan


mergesort dan dalam keadaan bagaimana sebaiknya menggunakan quicksort.

3. Dengan algoritma Dijkstra tentukan larik jarak terpendek D dan larik lintasan P dari graf
berikut :

0 60 80 40 30 20
60 0 10 15 5 30
80 10 0 5 20 8

40 15 5 0 9 12
30 5 20 9 0 10

20 30 8 12 10 0
Soal lain lagi :

4. a. Mengapa digunakan Queue (Antrian) pada algoritma RadixSort/LexicographicSort?,


Bagaimana stabilitas algoritma PegionholeSort?.

b. Untuk mengurutkan 15 data sembarang, hitung jumlah perbandingan yang dilakukan jika
digunakan :

- BubbleSort
- MergeSort (bestcase dan worstcase)
- teori (minimal seharusnya)

5. a. Tunjukkan bahwa algoritma MergeSort adalah stabil dan kemudian dengan membuat
contoh data (n = 5) tunjukkan bahwa QuickSort tidak stabil.
c. Untuk mengurutkan n data, dalam keadaan bagaimana sebaiknya menggunakan
mergesort dan dalam keadaan bagaimana sebaiknya menggunakan quicksort.

6. a. Diketahui matrix bobot dari graf berarah G sebagai berikut :

1 2 3 4
1 0 10 15 7
2 4 0 ∞ ∞
3 ∞ 8 0 5
4 ∞ 25 9 0

Dengan algoritma Floyd, tentukan matrix jarak terpendek dari setiap pasang titik/vertex
dari graf G di atas dengan menentukan matrik D untuk k=1, k=2, k=3 dan k=4.
b. Menurut saudara mana yang lebih cepat algoritma Prim atau Kruskal? Berikan alasannya.

Soal lain :

4. Diketahui 5 matrix yang masing-masing berukuran 20x70, 70x30, 30x10, 10x100 dan 100x30

d. Dengan dynamic programming, hitung jumlah perkalian minimal yang diperlukan untuk
mengalikan 5 matrix tersebut.
b. Diketahui ada 5 jenis minuman, masing-masing mempunyai volume dan harga seperti
tabel di bawah. Dengan teknik greedy, hitung berapa rupiah nilai maksimum yang dapat
diambil dan dari jenis mana saja, jika kita dapat mengambil maksimum 1250 ml (knapsack
real).

Jenis minuman Sprite Fanta CocaCola Sirup Teh


Volume (ml) 330 275 500 300 450
Harga (Rp) 1200 900 1600 1100 1500

5. a. Untuk mengurutkan 15 data, hitung jumlah perbandingan yang dilakukan jika


digunakan :

- SekuensialSort

- MergeSort (bestcase dan worstcase)

- teori (minimal seharusnya)

b. Untuk mengurutkan n data, dalam keadaan bagaimana sebaiknya menggunakan mergesort


dan dalam keadaan bagaimana sebaiknya menggunakan quicksort.

6. Dengan algoritma Dijkstra tentukan larik jarak terpenedek D dan larik lintasan P dari graf
berikut :

0 60 80 40 30 20
60 0 10 15 5 30
80 10 0 5 20 8

40 15 5 0 9 12
30 5 20 9 0 10

20 30 8 12 10 0

You might also like