The most common application of recursion is in mathematics and computer science, where a function being defined is applied within its own definition.
Penggunaan paling umum dari rekursi yaitu dalam matematika dan ilmu komputer, yang mengacu kepada suatu metode mendefinisikan fungsi yang mana fungsi tersebut menggunakan definisinya sendiri.
In mathematics and computer science, a class of objects or methods exhibits recursive behavior when it can be defined by two properties: A simple base case (or cases) — a terminating scenario that does not use recursion to produce an answer A recursive step — a set of rules that reduces all successive cases toward the base case.
Dalam matematika dan ilmu komputer, kelas dari objek atau metode memperlihatkan perilaku rekursif bila mereka dapat didefinisikan oleh dua properti berikut: Sebuah kasus (atau beberapa kasus) dasar sederhana Sejumlah aturan yang mengurangi kasus-kasus lainnya sampai ke kasus dasarnya.
For example, the following is a recursive definition of a person's ancestor.
Sebagai contoh, berikut ini adalah definisi rekursif dari leluhur seseorang: Orang tua seseorang adalah leluhur seseorang (kasus dasar).
The Fibonacci sequence is another classic example of recursion: Fib(0)0 as base case 1, Fib(1)
Bilangan Fibonacci adalah contoh klasik dari rekursi: Fib(0) adalah 0
Many mathematical axioms are based upon recursive rules.
[definisi rekursif] Banyak aksioma matematika berdasarkan aturan-aturan rekursif.
Recursion is the process a procedure goes through when one of the steps of the procedure involves invoking the procedure itself.
Rekursi adalah suatu proses dengan salah satu langkah dalam prosedur tersebut menjalankan prosedur itu sendiri.
To understand recursion, one must recognize the distinction between a procedure and the running of a procedure.
Untuk memahami rekursi, seseorang harus mengetahui perbedaan antara sebuah prosedur dan jalannya sebuah prosedur.
Recursion is related to, but not the same as, a reference within the specification of a procedure to the execution of some other procedure.
Rekursi berhubungan dengan, tetapi tidak sama, suatu referensi dalam spesifikasi prosedur sampai pada eksekusi beberapa prosedur lainnya.
Even if it is properly defined, a recursive procedure is not easy for humans to perform, as it requires distinguishing the new from the old, partially executed invocation of the procedure; this requires some administration as to how far various simultaneous instances of the procedures have progressed.
Bahkan jika didefinisikan secara tepat, prosedur rekursif tidak mudah dilakukan oleh manusia, karena ia membutuhkan membedakan pemanggilan prosedur yang baru dengan yang lama (yang telah dieksekusi sebagian); hal ini membutuhkan beberapa administrasi sejauh mana berbagai prosedur instan yang berjalan bersamaan telah berjalan.
For this reason, recursive definitions are very rare in everyday situations.
Karena hal ini definisi rekursif sangat jarang dalam keadaan harian.
Andrew Nevins, David Pesetsky and Cilene Rodrigues are among many who have argued against this.
Andrew Nevins, David Pesetsky dan Cilene Rodrigues berdebat melawan proposal tersebut.
A variation is found on page 269 in the index of some editions of Brian Kernighan and Dennis Ritchie's book
Sebuah variasi ditemukan di halaman 269 dalam indeks dari beberapa edisi buku Kernighan dan Ritchie
The C Programming Language; the index entry recursively refers to itself ("recursion 86, 139, 141, 182, 202, 269").
The C Programming Language; isi indeks secara rekursif mengacu kepada dirinya sendiri ("rekursi 86, 139, 141, 182, 202, 269").
It did not appear in the first edition of The C Programming Language.
Ia tidak ada di edisi pertama dari The C Programming Language.
Another joke is that "To understand recursion, you must understand recursion."
Lelucon yang lain adalah "Untuk memahami rekursi, anda harus memahami rekursi.
In the English-language version of the Google web search engine, when a search for "recursion" is made, the site suggests "Did you mean: recursion."
" Dalam versi bahasa Inggris dari mesin pencari web Google, saat mencari kata untuk rekursi dalam bahasa Inggris "recursion" dilakukan, situs tersebut menyarankan "Did you mean: recursion.
PHP, for example, stands for "PHP Hypertext Preprocessor", WINE stands for "WINE Is Not an Emulator", GNU stands for "GNU's not Unix", and SPARQL denotes the "SPARQL Protocol and RDF Query Language".
PHP, contohnya, singkatan dari "PHP Hypertext Preprocessor", WINE singkatan dari "Wine Is Not an Emulator", GNU singkatan dari "GNU's not Unix".
A function may be recursively defined in terms of itself.
Sebuah fungsi bisa didefinisikan sebagai bagian dari dirinya sendiri.
A familiar example is the Fibonacci number sequence: F(n)F(n − 1) +
Contoh yang terkenal adalah urutan bilangan Fibonacci: F(n)F(n − 1) +
Dynamic programming is an approach to optimization that restates a multiperiod or multistep optimization problem in recursive form.
Pemrograman dinamis adalah suatu pendekatan terhadap optimisasi yang menempatkan ulang suatu permasalahan multiperiode atau tahapan dalam bentuk rekursif.
The key result in dynamic programming is the Bellman equation, which writes the value of the optimization problem at an earlier time (or earlier step) in terms of its value at a later time (or later step).
Kunci jawaban dari pemrograman dinamis adalah persamaan Bellman, yang menuliskan nilai dari permasalahan optimisasi pada waktu awal (atau langkah awal) berkenaan dengan nilainya pada waktu kemudian (atau langkah selanjutnya).
In set theory, this is a theorem guaranteeing that recursively defined functions exist.
Dalam teori himpunan, ini adalah teorema yang menjamin bahwa fungsi yang terdefinisi secara rekursif itu ada.
Given a set X, an element a of X and a function f: X → X, the theorem states that there is a unique function F : N → X \to X} (where N } denotes the set of natural numbers including zero) such that F ( 0 )
Diberikan suatu himpunan X, sebuah elemen a dari X dan sebuah fungsi f : X → X , teorema menyatakan bahwa ada fungsi unik F : N → X \rightarrow X} (dengan N } menunjukkan himpunan dari bilangan asli termasuk nol) sehingga F ( 0 )
Hence F(k)G(k) implies F(k + 1)
} Karenanya F(k)G(k) menyiratkan F(k+1)G(k+1).
By induction, F(n)G(n) for all n ∈ N } .
Dengan induksi, F ( n )G ( n ) untuk semua n ∈ N } .
As a computer programming technique, this is called divide and conquer and is key to the design of many important algorithms.
Sebagai sebuah teknik dalam pemrograman komputer, hal ini disebut dengan divide and conquer dan merupakan kunci dari perancangan berbagai algoritma penting.
Divide and conquer serves as a top-down approach to problem solving, where problems are solved by solving smaller and smaller instances.
Divide and conquer menyediakan pendekatan atas-bawah dalam pemecahan masalah, dengan permasalahan diselesaikan dengan menyelesaikan instansi yang lebih kecil.
A contrary approach is dynamic programming.
Pendekatan sebaliknya yaitu pemrograman dinamis.
The function calls itself recursively on a smaller version of the input (n - 1) and multiplies the result of the recursive call by n, until reaching the base case, analogously to the mathematical definition of factorial.
Fungsi tersebut memanggil dirinya sendiri secara rekursif terhadap versi input yang lebih kecil (n-1) dan mengkalikan hasil dari pemanggilan rekursif dengan n, sampai pada kasus dasar, sama analoginya dengan definisi matematika dari faktorial.
Recursion in computer programming is exemplified when a function is defined in terms of simpler, often smaller versions of itself.
Rekursi dalam pemrograman komputer dicontohkan saat sebuah fungsi didefinisikan dalam bentuk sederhana, bahkan versi terkecil dari dirinya.
The solution to the problem is then devised by combining the solutions obtained from the simpler versions of the problem.
Solusi dari permasalahan kemudian dirancang dengan menggabungkan solusi-solusi yang didapat dari versi sederhana dari permasalahan.
Use of recursion in an algorithm has both advantages and disadvantages.
Penggunaan rekursi dalam suatu algoritma memiliki kelebihan dan kekurangan.
Recursion has been used in paintings since Giotto's Stefaneschi Triptych, made in 1320.
Rekursi telah digunakan dalam lukisan sejak Stefaneschi Triptych karya Giotto, yang dibuat pada tahun 1320.
Its central panel contains the kneeling figure of Cardinal Stefaneschi, holding up the triptych itself as an offering.
Panel tengahnya berisi figur Kardinal Stefaneschi yang sedang berlutut, mengangkat triptych itu sendiri sebagai persembahan.
This practice is more generally known as the Droste effect, an example of the Mise en abyme technique.
Praktik ini secara umum dikenal sebagai efek Droste, sebuah contoh teknik Mise en abyme.
M. C. Escher's Print Gallery (1956) is a print which depicts a distorted city containing a gallery which recursively contains the picture, and so ad infinitum.
M. C. Escher's Print Gallery (1956) adalah sebuah cetakan yang menggambarkan sebuah kota yang terdistorsi yang berisi sebuah galeri yang secara berulang-ulang berisi gambar tersebut, dan seterusnya secara ad infinitum(tak terhingga).