Anda di halaman 1dari 3

Cantika Aurelya Putri C

1304211062
IF 45-GAB.1 PJJ

CII2K3-STRATEGI ALGORITMA

Tugas Minggu ke-3

PETUNJUK
Unggah jawaban dari tugas ini di LMS pada assignment “Tugas minggu ke-3" dengan ketentuan:

• Cantumkan nama, NIM, dan kelas Strategi Algoritma Anda di dalam dokumen yang
diunggah
• Dokumen diunggah dalam format .pdf (max. 5MB)
• Dokumen yang diunggah diberi nama (file’s name) dengan format ‘[SA] Week03 -
<NIM>’, dimana bagian <NIM> diisi dengan NIM-mu
• Lihat LMS untuk melihat tenggat waktu pengumpulan tugas.

Soal 1
Divide and Conquer vs Brute Force
Bandingkan algoritma Brute Force untuk masalah pengurutan bilangan bulat dengan
algoritma Mergesort dan Quicksort? Manakah yang lebih efisien? Berikan alasanmu!
Bagaimana dengan algoritma Brute Force untuk pencarian bilangan bulat jika
dibandingkan dengan Binary Search?
Jawab : Menurut saya yang lebih efisien algoritma Mergesort dan Quicksort karena Mergesort
memiliki kompleksitas waktu O(n log n) dan Quicksort memiliki kompleksitas waktu rata-rata
sama seperti Mergesort sedangkan Brute Force menghasilkan kompleksitas waktu O( 2). Jadi,
dalam pengurutan bilangan bulat algoritma Mergesort dan Quicksort membutuhkan waktu lebih
singkat jika dibandingkan dengan algoritma Brute Force.

Jika dibandingkan dengan Binary Search, algoritma Brute Force kurang efisien karena algoritma
Brute Force melakukan pencarian array satu per satu sedangkan Binary Search menggunakan
metode Divide and Conquer lebih cepat menemukan bilangan array. Kompleksitas waktunya
Binary Search memiliki O(log n) sedangkan Brute Force memiliki kompleksitas ruang O(1).

halaman 1 dari 2
Soal 2
Sorting
Misalkan terdapat list sbb:
50 40 18 22 30 52 12 27
Gunakan Quicksort untuk mengurutkan list tersebut! Jelaskan langkah yang diambil
(dapat berupa gambar graf)!
Jawab :

halaman 2 dari 2
CII2K3 – STRATEGI ALGORITMA

Soal 3

Mencari nilai minimum dan maximum


Dengan menggunakan teknik Divide and Conquer, tentukan nilai minimum dan
maximum dari list berikut
50 40 18 22 30 52 12 27
Jelaskan langkah yang diambil (dapat berupa gambar graf)! Berapakah kompleksitas waktu
algoritma divide and conquer untuk mencari nilai minimum dan maximum (dalam Θ)?

Jawab :

T(n) = 2T( ) + 2 2

=2(2T( )+2)+2 4
= 4T(4)+4+2
= 4T(2T(8) + 2) + 4 + 2
= 8T(8)+8+4+2
= 2 k – 1 + T(2) + ∑ =1−1 2 i

= 2k – 1 . 1 + 2 k – 2
= 2+ n –2
= 3 2–2

= T(n)

halaman 3 dari 2

Anda mungkin juga menyukai