NEW
Font size
WorksheetsSoal Pilihan Ganda Rekursi
Total questions: 39
Worksheet time: 35mins
Fungsi rekursif adalah fungsi yang...
Hanya digunakan dalam sorting
Memanggil dirinya sendiri
Selalu membutuhkan array
Tidak memiliki parameter
Hanya bisa digunakan dalam Python
Basis kasus dalam rekursi berfungsi untuk...
Membuat algoritma lebih cepat
Menghindari perulangan
Menghentikan pemanggilan rekursif
Mengurangi jumlah parameter
Menghindari percabangan
Jika fungsi rekursif tidak memiliki base case, maka...
Program tetap berhenti
Terjadi infinite recursion
Hasil akan selalu benar
Program lebih cepat
Tidak terjadi apa-apa
Fungsi faktorial secara rekursif dapat ditulis sebagai:
n × fact(n+1)
n × fact(n-1)
fact(n) × n
n + fact(n)
fact(n-2)
Nilai faktorial dari 5 (5!) dengan rekursi adalah...
60
100
120
150
200
Fungsi Fibonacci rekursif biasanya ditulis sebagai...
F(n) = F(n-1) + F(n-2)
F(n) = F(n) + F(n-1)
F(n) = F(n+1) + F(n-1)
F(n) = n + F(n-1)
F(n) = n × F(n-1)
Nilai F(6) pada deret Fibonacci adalah...
5
8
10
11
13
Jika fungsi rekursif dipanggil terus menerus tanpa berhenti, maka akan terjadi...
Stack Overflow
Buffer Overflow
Heap Memory Error
Fungsi rekursif untuk menghitung pangkat n^m dapat ditulis:
power(n, m) = power(n, m+1)
power(n, m) = n × power(n, m-1)
power(n, m) = n + power(n, m-1)
power(n, m) = m × power(n-1, m)
power(n, m) = power(n-1, m-1)
Basis kasus dari rekursi faktorial adalah...
fact(0) = 0
fact(0) = 1
fact(1) = 0
fact(1) = 2
fact(2) = 0
Kelemahan algoritma rekursif adalah...
Lebih mudah dipahami
Lebih cepat daripada iteratif
Menggunakan banyak memori stack
Tidak bisa digunakan dalam sorting
Hanya untuk operasi matematika
Persamaan Fibonacci F(0)=0, F(1)=1, maka F(7)=...?
A. 8
B. 10
C. 11
D. 13
E. 21
Contoh kasus rekursi yang umum digunakan adalah...
Faktorial, Fibonacci, Hanoi Tower
Bubble sort, Merge sort
Greedy coin change
Knapsack problem
Binary search iteratif
Rekursi dapat digantikan dengan...
Perulangan (looping)
Operator aritmetika
Variabel global
Pointer
Class
Jika program menghitung Fibonacci secara rekursif, jumlah pemanggilan fungsi sangat...
Sedikit
Banyak
Konstan
Tidak berubah
Sama dengan jumlah n
Pemrograman rekursif erat kaitannya dengan...
Queue
Stack
Linked List
Array
Hash Table
Jika base case salah ditulis, maka...
Program berhenti dengan benar
Program tetap jalan tapi lambat
Program tidak pernah berhenti
Program langsung error kompilasi
Tidak berpengaruh
Algoritma greedy pada knapsack bekerja dengan cara...
Mengambil semua barang sekaligus
Memilih barang berdasarkan bobot terkecil
Memilih barang berdasarkan nilai terbesar per bobot
Memilih barang secara acak
Memilih barang sesuai urutan input
Pada fractional knapsack, barang boleh...
Dipilih seluruhnya saja
Tidak boleh dibagi
Dibagi menjadi pecahan
Dihapus jika berat besar
Tidak boleh dimasukkan
Tujuan greedy pada knapsack adalah...
Meminimalkan bobot
Memaksimalkan nilai total
Mengambil semua barang
Mengurangi jumlah barang
Mengurutkan barang
Jika kapasitas tas = 15, barang A (berat=5, nilai=30), B (berat=10, nilai=40), C (berat=20, nilai=100). Barang terbaik dengan greedy?
Ambil A dan B
Ambil C saja
Ambil B saja
Ambil A saja
Tidak ambil
Strategi greedy selalu optimal untuk...
0/1 knapsack
Fractional knapsack
Semua jenis knapsack
Dynamic knapsack
Tidak ada
Jika ada 3 barang dengan rasio nilai/berat: A=6, B=5, C=2. Barang yang dipilih terlebih dahulu adalah...
A
B
C
Semua sama
Tidak ada
Algoritma greedy gagal memberikan solusi optimal pada...
Fractional knapsack
Coin change dengan denominasi tertentu
Binary search
Hanoi tower
Bubble sort
Knapsack dengan fractional item lebih mudah karena...
Bisa mengambil pecahan dari barang
Tidak ada pembatas
Semua barang bernilai sama
Kapasitas selalu besar
Berat selalu sama
Jika kapasitas tas penuh, algoritma greedy akan...
Mengabaikan sisa barang
Menambah kapasitas tas
Menghitung ulang semua
Menghapus nilai barang
Menggunakan rekursi
Greedy pada knapsack lebih efisien dibanding dynamic programming karena...
Menggunakan lebih banyak memori
Menggunakan sorting dan langsung memilih
Menggunakan backtracking
knapsack 0/1, greedy tidak selalu optimal karena...
Barang tidak bisa dibagi
Barang memiliki nilai sama
Kapasitas tas besar
Barang bernilai kecil
Rasio bobot tetap
Hasil greedy selalu mendekati optimal jika...
Semua barang bobot sama
Kapasitas tidak terbatas
Rasio nilai/bobot jelas
Semua barang pecahannya sama
Nilai barang sama
Dalam implementasi greedy knapsack, langkah pertama adalah...
Mengurutkan barang berdasarkan rasio nilai/bobot
Menghitung kapasitas tas
Memilih barang terkecil
Menghapus barang
Memasukkan barang sembarang
Algoritma greedy pada coin change memilih koin...
Paling kecil dulu
Paling besar dulu
Sesuai urutan input
Secara acak
Sama banyak
Jika tersedia koin {1, 5, 10, 25} dan nilai = 37, maka koin pertama yang dipilih adalah...
25
10
5
1
50
Dengan koin {1, 3, 4}, nilai 6. Greedy memilih...
4+1+1
3+3
6×1
2+2+2
5+1
Algoritma greedy pada coin change optimal jika...
Denominasi koin standar (1, 5, 10, 25, ...)
Denominasi sembarang
Semua koin sama
Nilai selalu genap
Coin change dengan greedy tidak optimal pada set koin...
{1, 3, 4}
{1, 2, 5, 10}
{1, 5, 10, 25}
{1, 2, 4, 8}
{1, 50, 100}
Tujuan coin change adalah...
Meminimalkan jumlah koin
Memaksimalkan jumlah koin
Memaksimalkan nilai uang
Memperkecil denominasi
Menghilangkan sisa koin
Jika jumlah uang = 63, dengan koin {1, 5, 10, 25}, jumlah koin minimal adalah...
5
6
7
8
9
Jika set koin {1, 7, 10} dan target 14, greedy memilih...
10+1+1+1+1
7+7
14×1
10+4
7+4+3
Jika greedy gagal memberikan solusi optimal, maka metode lain yang digunakan adalah...
Dynamic Programming
Sorting
Binary Search
Brute Force saja
Rekursi tanpa base case
