Table of Contents
Algoritme rekursif adalah konsep dasar dalam ilmu komputer. mereka memecahkan masalah dengan memecahnya menjadi sub-masalah yang lebih kecil, mirip. pemahaman kompleksitas waktu mereka membantu mengevaluasi efisiensi dan kinerja mereka.
Apa Kompleksitas Waktu Itu?
Kerumitan waktu untuk menunjukkan bagaimana waktu berjalan dari sebuah algoritma meningkat dengan ukuran input. Ini dinyatakan menggunakan notasi Big O, yang menggambarkan batas atas dari tingkat pertumbuhan algoritma.
Algoritma rekursif
Algoritma rekursif sering kali melibatkan pemecahan masalah dengan memanggil fungsi yang sama dengan input yang lebih kecil. Untuk menganalisis kerumitan waktu mereka, sangat penting untuk memahami relasi pengulangan, yang menyatakan total waktu berdasarkan sub-masalah yang lebih kecil.
Metode Umum untuk Penghitungan
Metode utama vinof digunakan untuk menyelesaikan hubungan ulang:
- [[Eflastha Substitusi Metode: Tebak solusi dan verifikasinya melalui induksi.
- [[]] Metode Pohon Rekursi: Visualkan pengulangan sebagai pohon untuk merangkum biaya pada setiap tingkat.
Sebagai contoh, T(n) perulangan = 2T(n/2) + n menggambarkan algoritma divide-and-conquer. Melarutkan ini menghasilkan kerumitan waktu O(n log n).