Visualisasi

1. Introduction

Visualisasi ini dapat memvisualisasikan pohon rekursi dari sebuah algoritma rekursif.
Namun, anda juga dapat memvisualisasikan Graf Asiklik Berarah (DAG) dari sebuah algoritma Pemrograman Dinamis (DP).

2. Pohon Rekursi/DAG

Ini adalah daerah visualisasi dari Pohon Rekursi / DAG.
Dikarenakan ledakan kombinatorial, akan sulit bagi kami untuk memvisualisasikan pohon rekursi berukuran besar.
Dan, untuk DAG rekursi, sulit untuk meminimalisasi jumlah edge yang bersilangan untuk sub-problem yang ber-overlap.

3. Contoh-contoh

Pilihlah salah satu dari contoh yang ada, atau tulis kode anda sendiri.
Harap ingat bahwa visualisasi ini dapat menjalankan kode javascript apa saja, termasuk kode berbahaya, maka berhati-hatilah.
Klik tombol 'Mulai' untuk memulai visualisasinya setelah anda memilih contoh yang anda inginkan atau setelah anda menulis kode JavaScript valid yang anda inginkan!

4. Contoh Faktorial

Contoh Faktorial menghitung nilai faktorial dari sebuah bilangan N.
Ini adalah salah satu contoh rekursi (ekor) termudah yang bisa ditulis dalam versi iteratif.

5. Contoh Fibonacci

Contoh Fibonacci menghitung bilangan Fibonacci ke-N.
Berbeda dari contoh Factorial, tiap langkah rekursif pada contoh Fibonacci memanggil dua buah sub-problem yang lebih kecil. Konsep ini masih dapat ditulis secara iteratif setelah kita menguasai konsep dari Pemrograman Dinamis. Pohon rekursi Fibonacci (dan DAG) sering digunakan untuk menunjukkan ide dasar dari rekursi.

6. Contoh Katalan

Contoh bilangan Katalan menghitung bilangan katalan ke-N dengan cara rekursif.

7. Contoh FPB

Contoh FPB menghitung Faktor Persekutuan Terbesar dari dua bilangan A dan B dengan cara rekursif.

8. N pilih K

Masalah N pilih K menghitung koefisien binomial C(N, K).

9. Contoh Range Sum Query

Contoh Range Sum Query menghitung nilai maksimum dari S(l,r), di mana S(l,r) = a1[l] + a1[l+1] + ... + a1[r], di mana 1≤l≤r≤i.

10. Contoh knapsack

Contoh Knapsack menyelesaikan masalah 0/1 Knapsack: Berapakah nilai maksimum yang dapat kita peroleh, bila kita memiliki sebuah knapsack yang dapat menampung total berat w, di mana nilai dari barang ke-i adalah a1[i] dan berat dari barang ke-i tersebut adalah a2[i]?