Append
कंप्यूटर प्रोग्रामिंग में, एपेन्ड कुछ उच्च-स्तरीय प्रोग्रामिंग भाषाओं में जुड़ी सूचियों या सरणी को जोड़ने के लिए ऑपरेशन है। लिस्प एपेंड की उत्पत्ति प्रोग्रामिंग भाषा लिस्प में होती है। परिशिष्ट प्रक्रिया तर्क के रूप में शून्य या अधिक (लिंक की गई) सूचियों को लेती है, और इन सूचियों के संयोजन को लौटाती है। (परिशिष्ट '(1 2 3)' (ए बी) '()' (6)); आउटपुटः (1 2 3 ए बी 6) चूंकि परिशिष्ट प्रक्रिया को अंतिम को छोड़कर अपने सभी तर्कों को पूरी तरह से कॉपी करना चाहिए, इसलिए तत्वों की सूची के लिए इसका समय और स्थान जटिलता दोनों ओ (एन) हैं। यदि कोड में अनुचित तरीके से उपयोग किया जाता है तो यह अक्षमता का स्रोत हो सकता है। एन. सी. ओ. एन. सी. प्रक्रिया (जिसे एपेंड कहा जाता है! योजना में) परिशिष्ट के समान कार्य करता है, लेकिन विनाशकारी रूप सेः यह प्रत्येक तर्क के सीडीआर को बदल देता है (अंतिम को बचा कर), इसे अगली सूची की ओर इंगित करता है। कार्यान्वयन परिशिष्ट को आसानी से विपक्ष के संदर्भ में पुनरावर्ती रूप से परिभाषित किया जा सकता है। निम्नलिखित योजना में एक सरल कार्यान्वयन है, केवल दो तर्कों के लिएः (परिशिष्ट को परिभाषित करें (लैम्ब्डा (एलएस1एलएस2)) (यदि (शून्य? ls1) ls2 (विपक्ष (कार ls1) (परिशिष्ट (cdr ls1) ls2)))) परिशिष्ट को फोल्ड-राइट का उपयोग करके भी लागू किया जा सकता हैः (परिशिष्ट को परिभाषित करें (लैम्ब्डा (ए बी) (फोल्ड-राइट कॉन्स बी ए)) अन्य भाषाएँ लिस्प के बाद, अन्य उच्च-स्तरीय प्रोग्रामिंग भाषाएँ जो प्राचीन डेटा संरचनाओं के रूप में जुड़ी सूचियों की सुविधा देती हैं, उन्होंने एक परिशिष्ट को अपनाया है। सूचियों को जोड़ने के लिए, एक प्रचालक के रूप में, हास्केल + + का उपयोग करता है, ओसीएएमएल @का उपयोग करता है। अन्य भाषाएँ + या + + प्रतीकों का उपयोग एक स्ट्रिंग, सूची या सरणी को गैर-रचनात्मक रूप से संयोजित करने के लिए करती हैं। प्रोलॉग तर्क प्रोग्रामिंग भाषा प्रोलॉग में एक अंतर्निहित परिशिष्ट विधेय है, जिसे निम्नानुसार लागू किया जा सकता हैः परिशिष्ट ([], Ys, Ys)। परिशिष्ट ([X|Xs], Ys, [X|Zs]):-परिशिष्ट (Xs, Ys, Zs)। इस विधेय का उपयोग जोड़ने के लिए किया जा सकता है, लेकिन सूचियों को अलग करने के लिए भी किया जा सकता है। कॉलिंग?-परिशिष्ट (एल, आर, [1,2,3])। समाधान देता हैः L = [], R = [1,2,3]; L = [1,2,3]; L = [1,2,3], R = [3]; L = [1,2,3], R = [] मिरांडा। एपेंड a b = रिड्यूस कॉन्स b a जहाँ रिड्यूस फोल्ड के लिए मिरांडा का नाम है, और कॉन्स दो मानों या सूचियों से एक सूची का निर्माण करता है। उदाहरण के लिए, जोड़ [1,2] [3,4] = कम विपक्ष [3,4] [1,2] = (कम विपक्ष [3,4]) (विपक्ष 1 (विपक्ष 2 शून्य)) = विपक्ष 1 (विपक्ष 2 [3,4]) (विपक्ष और शून्य द्वारा विपक्ष की जगह [3,4]) = [1,2,3,4] हास्केल में, इस राइट-फोल्ड का वही प्रभाव होता है जो उपरोक्त योजना कार्यान्वयन में होता हैः जोड़ः [a]-> [a]-> [a] परिशिष्ट xs ys = फ़ोल्डर (:) ys xs यह अनिवार्य रूप से हास्केल के + + ऑपरेटर का एक पुनः कार्यान्वयन है। पर्ल में, पुश फ़ंक्शन परिशिष्ट विधि के बराबर है, और इसका उपयोग निम्नलिखित तरीके से किया जा सकता है। मेरा @list; दबाएँ @list, 1; दबाएँ @list, 2,3; अंतिम परिणाम एक सूची है जिसमें [1,2,3] अनशिफ्ट फ़ंक्शन एक सूची के सामने संलग्न होता है, बजाय अंत के मेरे @list; अनशिफ्ट @list, 1; अनशिफ्ट @list, 2,3; अंतिम परिणाम एक सूची है जिसमें [2,3,1] एक फ़ाइल खोलते समय, अधिक लिखने के बजाय जोड़ने के लिए ">>" मोड का उपयोग करें। खोलें (मेरा $fh, '>>',/कुछ/फ़ाइल. txt '); प्रिंट करें $fh "कुछ नया पाठ \n"; बंद करें $fh; ध्यान दें कि फ़ाइल हैंडल खोलते और बंद करते समय, किसी को हमेशा वापसी मूल्य की जांच करनी चाहिए। पायथन में, सूचियों को जोड़ने के लिए सूची विधि "विस्तार" या इन्फिक्स ऑपरेटर + और + = का उपयोग करें। l = [1,2] l.extend ([3,4,5]) प्रिंट l + [6,7] इस कोड को निष्पादित करने के बाद, l एक सूची है जिसमें [1,2,3,4,5] है, जबकि उत्पन्न आउटपुट सूची [1,2,3,4,5,6,7] है। सूची विधि "परिशिष्ट" के साथ भ्रमित न हों, जो एक सूची में एक एकल तत्व जोड़ती हैः l = [[1,2,3] l.append (3) यहाँ, परिणाम एक सूची है जिसमें [1,2,3] है। बैश इन बैश परिशिष्ट पुनर्निर्देशन किसी चीज़ में एक धारा जोड़ने के लिए ">>" का उपयोग है, जैसे शेल आदेशों की निम्नलिखित श्रृंखलाः इको हैलो वर्ल्ड! > पाठ; अलविदा दुनिया! >> पाठ; बिल्ली पाठ धारा "अलविदा दुनिया!" पहले कमांड में लिखी गई टेक्स्ट फाइल में जोड़ा जाता है। ";" का तात्पर्य दिए गए आदेशों के निष्पादन को क्रम में करना है, एक साथ नहीं। तो, पाठ फ़ाइल की अंतिम सामग्री हैः संदर्भ परिशिष्ट का विवरण। कार्यात्मक प्रोग्रामिंग लिस्प (प्रोग्रामिंग भाषा) प्रोग्रामिंग उदाहरण कोड लेखों के साथ लेखों का निर्माण करती है उदाहरण के साथ हास्केल कोड लेख उदाहरण के साथ पर्ल कोड लेख उदाहरण के साथ आई. बी. एम. पी. सी. संगत पर पायथन (प्रोग्रामिंग भाषा) कोड डी. ओ. एस.