कंप्यूटरप्रोग्रामिंग

प्रत्यावर्तन - यह क्या है? प्रत्यावर्तन प्रोग्रामिंग (उदाहरण)

प्रत्यावर्तन अपने आप में दिलचस्प घटनाओं हैं, लेकिन वे कुछ मामलों में विशेष महत्व की प्रोग्रामिंग में कर रहे हैं। पहली बार उनके साथ सामना के लिए, लोगों के एक काफी बड़ी संख्या में समस्या की उनकी समझ के साथ की है। इस संदर्भ में "प्रत्यावर्तन" प्रयोग किया जाता है पर निर्भर करता है अवधि के संभावित उपयोग की एक विशाल क्षेत्र की वजह से है,। लेकिन यह आशा की जाती है कि इस लेख संभव गलतफहमी और भ्रम से बचने में मदद मिलेगी।

"प्रत्यावर्तन" सामान्य रूप में क्या है?

शब्द "प्रत्यावर्तन" मूल्यों है कि इस क्षेत्र में इसे लागू किया जाता है पर निर्भर करते हैं की एक सीमा है। यूनिवर्सल पद इस प्रकार है: प्रत्यावर्तन - इस परिभाषा छवियों, वस्तुओं या प्रक्रियाओं का विवरण वस्तुओं को अपने आप में। वे केवल मामलों में जहां वस्तु खुद का एक हिस्सा है में संभव है। अपनी ही तरह से यह पुनरावर्ती गणित, भौतिक विज्ञान, प्रोग्रामिंग, और अन्य वैज्ञानिक विषयों की एक संख्या निर्धारित करता है। व्यावहारिक अनुप्रयोग सूचना प्रणाली और शारीरिक प्रयोगों में पाया जाता है।

प्रोग्रामिंग में प्रत्यावर्तन का क्या अर्थ है?

जब प्रक्रिया या कार्यक्रम समारोह में ही कॉल पुनरावर्ती स्थितियों या प्रोग्रामिंग में प्रत्यावर्तन, क्षणों कहा जाता है। जो लोग प्रोग्रामिंग जानने के लिए शुरू कर दिया है, इस लग सकता है के रूप में के लिए अजीब के रूप में, इसके बारे में अजीब बात नहीं है। ध्यान रखें कि प्रत्यावर्तन में रखें - यह मुश्किल नहीं है, और कुछ मामलों में वे चक्र की जगह। आपके कंप्यूटर को ठीक से सेट एक प्रक्रिया या फ़ंक्शन को कॉल करते हैं, तो वह सिर्फ उसे ले जाने के लिए शुरू होता है।

प्रत्यावर्तन परिमित या अनंत हो सकता है। पहले ही कारण बंद कर दिया करने के लिए, यह भी समाप्ति की शर्तों होना चाहिए। मूल्य में यह कमी चर हो सकता है, और जब यह एक निश्चित मूल्य तक पहुँच जाता है, और कुछ लक्ष्यों को प्राप्त करने के लिए बाद में कोड करने के लिए कॉल पूरा होने सॉफ्टवेयर / संक्रमण को रोकने, जरूरतों के आधार पर। द्वारा अनंत प्रत्यावर्तन का तात्पर्य है कि यह कहा जाएगा, एक कंप्यूटर या एक कार्यक्रम में यह संचालित के रूप में रूप में लंबे समय से काम करेगा।

यह भी संभव संगठन मुश्किल दो कार्यों का उपयोग कर प्रत्यावर्तन है। कंप्यूटर तर्क के लिए तार्किक स्थितियों की एक जटिल श्रृंखला से बाहर एक तरह से - एक देखते हैं और बी ए बी को अपने कोड कॉल में एक समारोह है, और बी, बारी में, एक कंप्यूटर की आवश्यकता एक जटिल ए प्रत्यावर्तन प्रदर्शन करने के लिए अंक मान लीजिए।

इन पंक्तियों के पाठक प्रोग्रामिंग चक्र का अध्ययन किया है, तो यह शायद पहले से ही उन्हें और प्रत्यावर्तन के बीच समानता ध्यान दिया गया हो। सामान्य तौर पर, वे वास्तव में समान या एक कार्य कर सकते हैं। प्रत्यावर्तन की मदद से अनुकरण काम आते-जाते हैं करने के लिए सुविधाजनक है। जहां चक्र खुद को उपयोग करने के लिए नहीं बहुत सुविधाजनक है यह विशेष रूप से उपयोगी है। ड्राइविंग सॉफ्टवेयर कार्यान्वयन विभिन्न उच्च स्तरीय प्रोग्रामिंग भाषाओं में बहुत अलग नहीं है। फिर भी "पास्कल" और सी में प्रत्यावर्तन या किसी अन्य भाषा में प्रत्यावर्तन अपनी ही विशेषताएं हैं। वह सफलतापूर्वक इस तरह के "कोडांतरक" के रूप में निम्न स्तर भाषाओं में लागू किया जा सकता है, लेकिन यह अधिक समस्याग्रस्त और समय लगता है।

पेड़ प्रत्यावर्तन

"वृक्ष" प्रोग्रामिंग में क्या है? यह एक परिमित कम से कम एक नोड है कि से मिलकर एक समूह है:

  1. एक प्रारंभिक विशेष नोड है, पूरे पेड़ की जड़ कहा जाता है।
  2. शेष नोड्स वह राशि होती है शून्य, संबंध तोड़ना सबसेट से अलग है में हैं, एक ही समय में वे भी एक पेड़ है। संगठन की इस तरह के सभी रूपों मुख्य पेड़ के subtrees कहा जाता है।

दूसरे शब्दों में: पेड़ subtrees कि अधिक से अधिक पेड़ होते हैं, लेकिन पिछले पेड़ से कम संख्या में होते हैं। यह जारी है जब तक एक नोड के आगे बढ़ने के लिए संभव हो जाएगा, और यह प्रत्यावर्तन के अंत का मतलब होगा। वहाँ आरेखण के बारे में एक और अति सूक्ष्म अंतर है: साधारण पेड़ नीचे से ऊपर हो जाना, और वे प्रोग्रामिंग ठीक इसके विपरीत के लिए तैयार हैं। साइटें कोई निरंतरता है, अंत नोड्स कहा जाता है। अंकन की सुविधा के लिए, और उपयोग वंश शब्दावली (पूर्वजों, बच्चों) में आसानी के लिए।

यह प्रोग्रामिंग में प्रयोग किया जाता है क्यों?

प्रोग्रामिंग में प्रत्यावर्तन के उनके प्रयोग जटिल कार्यों की एक श्रृंखला पर पाया। आप केवल एक फोन करना चाहते हैं, आसान एकीकरण के चक्र का प्रयोग होता है, लेकिन जब दो या अधिक repetitions के चेनिंग से बचने और एक पेड़ के रूप में उनके क्रियान्वयन सुनिश्चित करने के लिए, और पुनरावर्ती स्थितियों लागू होते हैं। समस्याओं की एक विस्तृत वर्ग के लिए इस तरह से कंप्यूटिंग प्रक्रिया के संगठन संसाधनों की खपत के मामले में सबसे अच्छा है। इस प्रकार, "पास्कल" या किसी अन्य उच्च स्तरीय प्रोग्रामिंग भाषा में प्रत्यावर्तन बाहरी कॉल की संख्या की परवाह किए बिना की स्थिति में एक फ़ंक्शन या प्रक्रिया कॉल है। दूसरे शब्दों में, कार्यक्रम केवल एक सबरूटीन के लिए कॉल किया जा सकता है, लेकिन यह एक निश्चित पूर्व निर्धारित टोक़ अप करने के लिए किया जाएगा। कुछ मायनों में यह इसके उपयोग विशेषताओं के साथ एक एनालॉग पाश है।

विभिन्न प्रोग्रामिंग भाषाओं में मतभेद प्रत्यावर्तन

एक कार्यान्वयन के सामान्य चित्र और प्रत्येक व्यक्ति के मामले में विशेष आवेदन के बावजूद, प्रोग्रामिंग में प्रत्यावर्तन अपनी ही विशेषताएं हैं। यह आवश्यक सामग्री के लिए खोज करने में कठिनाइयों का कारण बन सकता। लेकिन हमेशा ध्यान में रखना: अगर प्रोग्रामिंग भाषा एक समारोह या प्रक्रिया है, इसलिए, कॉल प्रत्यावर्तन है - यह संभव है। लेकिन इसकी सबसे महत्वपूर्ण अंतर है जब निम्न और उच्च प्रोग्रामिंग भाषाओं का उपयोग कर पाए जाते हैं। इस कार्यक्रम के कार्यान्वयन की विशेष रूप से सच संभावनाएं है। निष्पादन अंततः, कार्य सेट कर दिया जाता है कि क्या पर निर्भर करेगा यह के अनुसार और लिखित प्रत्यावर्तन में। कार्य और प्रयोग किया जाता प्रक्रियाओं अलग हैं, लेकिन उनके उद्देश्य हमेशा एक ही है - खुद को कॉल कर सकते हैं।

प्रत्यावर्तन - यह आसान है। के रूप में आसान लेख की सामग्री को याद है?

शुरुआती समझने के लिए के लिए यह पहली बार में मुश्किल हो सकता है, तो आप या कम से कम एक प्रत्यावर्तन के उदाहरण हैं, की जरूरत है। इसलिए, आप रोजमर्रा की जिंदगी है, जो इस तंत्र का सार समझने के लिए प्रोग्रामिंग में उद्देश्यों को प्राप्त करने में मदद मिलेगी की एक छोटा सा उदाहरण देना चाहिए। दो या अधिक दर्पण ले लो, ताकि एक एकल प्रदर्शन में सभी बाकी रख दें। यह देखा जा सकता है कि दर्पण में ही बार-बार प्रतिबिंबित करती हैं, अनंत का प्रभाव पैदा। यहाँ प्रत्यावर्तन - है, figuratively बोल, प्रतिबिंब (जो एक बहुत है)। आप देख सकते हैं, समझने में आसान है, यह इच्छा होगी। प्रोग्रामिंग सामग्री के एक अध्ययन में, तो हम उस प्रत्यावर्तन देख सकते हैं - यह भी साध्य कार्य है बहुत आसानी से।

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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