KomputerPengaturcaraan

Rekursi - apakah ini? pengaturcaraan rekursi (Contoh)

Rekursi adalah peristiwa-peristiwa yang menarik dalam diri mereka sendiri, tetapi mereka berada dalam pengaturcaraan kepentingan tertentu dalam beberapa kes. Buat pertama kali berhadapan dengan mereka, bilangan yang agak besar orang mempunyai dengan pemahaman mereka terhadap masalah ini. Ini adalah kerana bidang besar penggunaan potensi jangka, bergantung kepada konteks di mana "rekursi" digunakan. Tetapi adalah diharapkan artikel ini akan membantu untuk mengelakkan salah faham mungkin dan kekeliruan.

Apakah "rekursi" secara umum?

Perkataan "rekursi" mempunyai julat nilai yang bergantung kepada rantau ini di mana ia digunakan. Universal jawatan adalah seperti berikut: rekursi - imej definisi ini, penerangan objek atau proses dalam objek itu sendiri. mereka yang mungkin hanya dalam kes-kes di mana objek itu adalah sebahagian daripada dirinya. Dengan caranya sendiri ia mentakrifkan matematik rekursi, fizik, pengaturcaraan, dan beberapa disiplin saintifik yang lain. Permohonan praktikal yang terdapat dalam sistem maklumat dan eksperimen fizikal.

Apa yang dimaksudkan dengan rekursi dalam pengaturcaraan?

keadaan rekursi atau rekursi dalam pengaturcaraan, yang dipanggil saat-saat apabila prosedur atau program fungsi panggilan sendiri. Seperti yang pelik bagi mereka yang telah mula belajar pengaturcaraan, kerana ini mungkin berbunyi, tiada apa yang pelik mengenainya. Perlu diingat bahawa rekursi - ia tidak sukar, dan dalam beberapa kes mereka menggantikan kitaran. Jika komputer anda ditetapkan dengan betul memanggil prosedur atau fungsi, dia hanya bermula untuk membawa dia.

Rekursi boleh terhingga atau tak terhingga. Terlebih dahulu berhenti sendiri sebab, ia juga harus menjadi syarat penamatan. penurunan ini dalam nilai boleh berubah-ubah, dan apabila ia mencapai nilai tertentu, dan menghentikan perisian / peralihan panggilan siap untuk kod yang berikutnya, bergantung kepada keperluan untuk mencapai matlamat tertentu. Oleh rekursi terhingga membayangkan bahawa ia akan dipanggil, akan bekerja selagi komputer atau program di mana ia beroperasi.

Ia juga mungkin rekursi sukar organisasi menggunakan dua fungsi. Katakan terdapat A dan B. A mempunyai fungsi dalam panggilan kod anda ke B, dan B, seterusnya, menunjukkan keperluan untuk komputer untuk melakukan A. rekursi kompleks - jalan keluar dari satu siri kompleks keadaan logik untuk logik komputer.

Jika pembaca ayat-ayat ini dikaji kitaran komputer, ia mungkin sudah perasan persamaan di antara mereka dan rekursi. Secara umum, mereka sebenarnya boleh melaksanakan tugas-tugas yang sama atau serupa. Dengan bantuan rekursi hampir dengan melakukan kitaran kerja simulasi. Ini amat berguna di mana kitaran diri mereka untuk menggunakan tidak adalah sangat mudah. Memandu pelaksanaan perisian tidak begitu berbeza dalam bahasa pengaturcaraan peringkat tinggi yang berbeza. Namun rekursi dalam "Pascal" dan rekursi dalam C atau bahasa yang lain mempunyai ciri-ciri sendiri. Dia boleh berjaya dilaksanakan dalam bahasa-bahasa peringkat rendah seperti "penghimpun", tetapi ia adalah lebih bermasalah dan memakan masa.

pokok rekursi

Apakah yang dimaksudkan dengan "pokok" dalam pengaturcaraan? Ia adalah satu set terhingga yang terdiri daripada sekurang-kurangnya satu nod iaitu:

  1. Mempunyai nod khas awal, dipanggil akar keseluruhan pokok itu.
  2. Nod yang tinggal adalah dalam jumlah yang berbeza daripada sifar, subset tak berkait, pada masa yang sama mereka juga pokok. Semua bentuk seperti organisasi dipanggil subpohon pokok utama.

Dalam erti kata lain: pokok mengandungi subpohon yang mengandungi lebih banyak pokok, tetapi dalam jumlah yang lebih kecil daripada pokok sebelumnya. Ini berterusan sehingga salah satu daripada nod akan menjadi mungkin untuk bergerak ke atas, dan ia akan bermakna akhir rekursi. Ada satu lagi nuansa tentang membuat rajah: pokok biasa tumbuh dari bawah ke atas, dan mereka telah disediakan kepada pengaturcaraan sebaliknya. Tapak yang tidak mempunyai kesinambungan, yang dipanggil nod akhir. Untuk kemudahan notasi, dan untuk kemudahan penggunaan istilah keturunan (nenek moyang, kanak-kanak).

Mengapa ia digunakan dalam pengaturcaraan?

beliau menggunakan rekursi dalam pengaturcaraan didapati dalam pelbagai tugas yang kompleks. Jika anda ingin membuat hanya satu panggilan, lebih mudah ialah penggunaan kitaran integrasi, tetapi apabila dua atau lebih ulangan untuk mengelakkan chaining dan membuat pelaksanaannya dalam bentuk pokok, dan keadaan rekursi dikenakan. Untuk kelas-benar masalah organisasi proses pengiraan dengan cara ini adalah yang terbaik dari segi penggunaan sumber. Oleh itu, rekursi dalam "Pascal" atau mana-mana bahasa pengaturcaraan peringkat tinggi adalah fungsi atau prosedur panggilan kepada syarat-syarat tanpa mengira bilangan panggilan luar. Dalam erti kata lain, program ini boleh menjadi hanya satu panggilan kepada subrutin, tetapi ia akan menjadi sehingga tork yang telah ditetapkan tertentu. Dalam beberapa cara ia adalah satu gelung analog dengan ciri-ciri penggunaannya.

Perbezaan rekursi dalam pelbagai bahasa pengaturcaraan

Walaupun gambar rajah umum pelaksanaan dan aplikasi tertentu dalam setiap kes individu, rekursi dalam pengaturcaraan mempunyai ciri-ciri sendiri. Ini boleh membawa kepada kesukaran dalam mencari bahan yang diperlukan. Tetapi sentiasa ingat: jika bahasa pengaturcaraan adalah fungsi atau prosedur, oleh itu, rekursi panggilan - ia boleh dilaksanakan. Tetapi perbezaan yang paling ketara berlaku apabila menggunakan bahasa pengaturcaraan rendah dan tinggi. Ini adalah kemungkinan benar pelaksanaan program. Pelaksanaan akhirnya akan bergantung kepada sama ada tugas yang ditetapkan, selaras dengan itu dan rekursi bertulis. Fungsi dan prosedur yang digunakan adalah berbeza, tetapi tujuan mereka adalah sentiasa sama - membuat memanggil diri mereka.

Rekursi - ia adalah mudah. Semudah untuk mengingati kandungan artikel itu?

Untuk pemula untuk memahami ia boleh menjadi sukar pada mulanya, jadi anda perlu contoh rekursi, atau sekurang-kurangnya satu. Oleh itu, anda perlu memberi contoh yang kecil dari kehidupan sehari-hari, yang akan membantu untuk memahami intipati mekanisme ini untuk mencapai objektif dalam pengaturcaraan. Ambil dua atau lebih cermin, meletakkan mereka supaya dalam paparan tunggal semua yang lain. Ia boleh dilihat bahawa cermin mencerminkan dirinya berulang kali, mewujudkan kesan infiniti. Di sini rekursi - adalah, secara kiasan bercakap, pantulan (yang banyak). Seperti yang anda lihat, mudah difahami, ia akan mahu. Satu kajian ke atas bahan komputer, maka kita boleh melihat rekursi itu - ia juga sangat mudah tugas boleh dilakukan.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ms.birmiss.com. Theme powered by WordPress.