Posts

Showing posts from January, 2024

Konsep Dasar divide and conque

Image
 Konsep Dasar divide and conque dalam bahasa C Divide and Conquer (Pecah dan Kuasai) adalah paradigma desain algoritma yang melibatkan pemecahan suatu masalah besar menjadi submasalah yang lebih kecil, menyelesaikan submasalah tersebut secara rekursif, dan kemudian menggabungkan solusi submasalah untuk mendapatkan solusi akhir masalah asli. Konsep ini sangat umum dalam desain algoritma dan dapat digunakan untuk memecahkan berbagai jenis masalah. Berikut adalah penjelasan konsep dasar Divide and Conquer: 1. Divide (Pecah) Tahap pertama adalah memecah masalah besar menjadi submasalah yang lebih kecil. Pemecahan ini dilakukan hingga masalah mencapai ukuran yang cukup kecil untuk dipecahkan secara langsung. 2. Conquer (Kuasai) Tahap ini melibatkan penyelesaian submasalah yang dihasilkan dari tahap pemecahan. Submasalah dipecahkan secara rekursif. Jika ukuran submasalah sudah cukup kecil, solusi dapat dihitung langsung. 3. Combine (Gabung) Tahap terakhir adalah menggabungkan solusi dari...

konsep dasar algoritma greedy

Image
 Konsep dasar algoritma Greedy Algoritma greedy adalah jenis algoritma yang memilih langkah terbaik secara lokal pada setiap langkahnya, dengan harapan akan mencapai solusi yang optimal secara global. Algoritma ini memilih opsi terbaik berdasarkan kondisi saat ini tanpa mempertimbangkan konsekuensi jangka panjang. Pada setiap langkah, algoritma greedy hanya mempertimbangkan informasi yang tersedia saat ini, tanpa melihat ke belakang atau melihat langkah-langkah selanjutnya. Konsep dasar algoritma greedy melibatkan tiga elemen utama: pilihan lokal terbaik, sifat greedy, dan optimasi global. berikut implementasi algoritma greedy di dalam bahasa C 1. #include <stdio.h> #include <stdlib.h> typedef struct { int index ; int waktuMulai ; int waktuSelesai ; int bobot ; } Tugas ; void tukar ( Tugas *a, Tugas *b) { Tugas temp = *a; *a = *b; *b = temp; } void urutBerdasarkanWaktuSelesai ( Tugas tugas[], int n) { for ( int i = 0 ; i < n - 1 ; i++)...