Anda di halaman 1dari 2

Nama : Angga Antoni Prastyo

NPM : 22670026
Kelas : 3A Informatika
Tugas SAA

1. Bagaimana algorithma Dinamis dalam menyelesaikan masalah ?

2. Bagaimana langkah atau cara kerja algorithma Dinamis tersebut ?

3. Bagaimana menentukan kompleksitas algorithmanya ?

Jawaban :

1. Algoritma dinamis adalah sebuah pendekatan dalam pemrograman yang bekerja dengan cara
mencari solusi dari setiap bagian terkecil dari suatu permasalahan, dan hasilnya disimpan untuk
menyelesaikan permasalahan baru di masa yang akan datang. Algoritma ini dinamis dalam
memecahkan masalah yang kompleks dengan cara memecahkannya menjadi beberapa sub
permasalahan sederhana, kemudian menyimpan hasilnya untuk digunakan pada masa
mendatang. Metode Program Dinamis pada penyelesaian Traveling Salesman Problem dibagi
menjadi dua jenis penyelesaian, yaitu Program Dinamis perhitungan rekursif maju dan rekursif
mundur.

2. Langkah – langkah sebagai berikut :


A. Identifikasi sub permasalahan: Identifikasi masalah yang kompleks dan pecah menjadi
beberapa sub permasalahan yang lebih kecil.
B. Menentukan nilai optimal: Tentukan nilai optimal dari setiap sub permasalahan.
C. Membangun solusi secara rekursif: Membangun solusi secara rekursif dengan
menggabungkan solusi dari setiap sub permasalahan.
D. Menerapkan prinsip optimalitas: Pastikan bahwa solusi optimal dari setiap sub
permasalahan disimpan dan digunakan untuk menyelesaikan permasalahan yang lebih
besar.
E. Membangun solusi secara iteratif: Membangun solusi secara iteratif dengan
menggabungkan solusi dari setiap sub permasalahan.
F. Memilih solusi optimal: Memilih solusi optimal dari solusi yang dihasilkan.

3. Kompleksitas waktu algoritma dinamis dapat diukur dengan notasi O(n), di mana "n" adalah
ukuran masalah. Kompleksitas ini bergantung pada seberapa efisien algoritma dinamis dalam
menyelesaikan masalah dengan ukuran yang berbeda. Selain itu, kompleksitas ruang juga perlu
dipertimbangkan, yang mengukur seberapa banyak memori yang diperlukan oleh algoritma
dalam menyelesaikan masalah dengan ukuran yang berbeda. Algoritma dinamis biasanya
memiliki kompleksitas waktu yang lebih baik daripada pendekatan brute force, karena algoritma
dinamis menghindari pengulangan perhitungan yang tidak perlu dengan menyimpan hasil
perhitungan sebelumnya. Namun, kompleksitas algoritma dinamis dapat bervariasi tergantung
pada masalah yang diselesaikan dan implementasi spesifik dari algoritma tersebut

Anda mungkin juga menyukai