algoritma dan strukutr data - rekursi

6
Rekursi Algoritma dan Struktur Data Kuliahkita - Edwin Lunando

Upload: georgius-rinaldo

Post on 20-Jul-2015

27 views

Category:

Engineering


3 download

TRANSCRIPT

Page 1: Algoritma dan Strukutr Data - rekursi

RekursiAlgoritma danStruktur Data

Kuliahkita - Edwin Lunando

Page 2: Algoritma dan Strukutr Data - rekursi

Pendahuluan

Rekursi adalah sebuah teknik pengulangan yang melibatkan dirinya sendiri.

Dalam materi ini, rekursif digunakan dalam sebuah fungsi.

Umumnya proses rekursif ini berguna dalam permodelan matematika pada sebuah program

Page 3: Algoritma dan Strukutr Data - rekursi

Fungsi Rekursif

Banyak fungsi matematis yang bisa didefinisikan sebagai rekursif. Contoh:1. faktorial2. fibonacci3. fourier4. dll

Page 4: Algoritma dan Strukutr Data - rekursi

Fungsi Rekursif

Pada pendahuluan dijelaskan bahwa fungsi rekursif akan melibatkan dirinya sendiri.

Maksudnya: Pada pemrograman, fungsi akan mengembalikan sebuah nilai. Dalam rekursif, hasil kembalian fungsi dapat berupa nilai atau operasi berikutnya dari fungsi itu sendiri sampai mencapai kondisi tertentu.

Page 5: Algoritma dan Strukutr Data - rekursi

Contoh Fungsi Rekursif (Faktorial)

Berikut adalah pseudocode fungsi rekursif untuk kasus operasi faktorial:

Dapat dilihat pada kode bahwa fungsi factorial(n) akan memanggil dirinya sendiri apabila belum mencapai basis rekursifnya.

factorial (n) { if (n = 1) return 1; // → Basis else // jika basis belum terpenuhi return (n * factorial (n - 1)); // lakukan rekursi pada dirinya}

Page 6: Algoritma dan Strukutr Data - rekursi

Contoh Fungsi Rekursif (Faktorial)

Contoh: factorial (4)

Prosesnya:factorial(4) → 4 * factorial(3) factorial(3) → 4 * [3 * factorial(2)] factorial(2) → 4 * 3 * [2 * factorial (1)] factorial(1) → 4 * 3 * 2 * [1]

factorial(4) → 24

factorial (n) { if (n = 1) return 1; // → Basis else return (n * factorial (n - 1));}