Difference between revisions of "गैप बफ़र"

From alpha
Jump to navigation Jump to search
Line 1: Line 1:
{{refimprove|date=April 2012}}
{{refimprove|date=April 2012}}
[[कंप्यूटर विज्ञान|'''कंप्यूटर विज्ञान''']] में गैप बफर एक [[गतिशील सरणी]] है जो एक ही समिष्ट के पास दक्ष सम्मिलन और विलोपन संचालन की अनुमति देता है। गैप बफ़र्स विशेष रूप से टेक्स्ट संपादकों में सामान्य हैं, जहां टेक्स्ट में अधिकांश परिवर्तन [[कर्सर (कंप्यूटर)]] के वर्तमान समिष्ट पर या उसके निकट होते हैं। टेक्स्ट को दो सन्निहित खंडों में एक बड़े बफर में संग्रहीत किया जाता है, जिसमें नया टेक्स्ट डालने के लिए उनके मध्य एक अंतर होता है। कर्सर को ले जाने में टेक्स्ट को अंतराल के एक तरफ से दूसरे तक कॉपी करना सम्मिलित है (कभी-कभी कॉपी करने में अगले संचालन तक देरी हो जाती है जो टेक्स्ट को बदल देता है)। सम्मिलन पहले खंड के अंत में नया टेक्स्ट जोड़ता है; हटाने से यह विलुप्त जाता है।
[[कंप्यूटर विज्ञान|'''कंप्यूटर विज्ञान''']] में गैप बफर [[गतिशील सरणी]] है जो ही समिष्ट के पास दक्ष सम्मिलन और विलोपन संचालन की अनुमति देता है। गैप बफ़र्स विशेष रूप से टेक्स्ट संपादकों में सामान्य हैं, जहां टेक्स्ट में अधिकांश परिवर्तन [[कर्सर (कंप्यूटर)]] के वर्तमान समिष्ट पर या उसके निकट होते हैं। टेक्स्ट को दो सन्निहित खंडों में बड़े बफर में संग्रहीत किया जाता है, जिसमें नया टेक्स्ट डालने के लिए उनके मध्य एक अंतर होता है। कर्सर को ले जाने में टेक्स्ट को अंतराल के तरफ से दूसरे तक कॉपी करना सम्मिलित है (कभी-कभी कॉपी करने में अगले संचालन तक देरी हो जाती है जो टेक्स्ट को बदल देता है)। सम्मिलन पहले खंड के अंत में नया टेक्स्ट जोड़ता है; हटाने से यह विलुप्त जाता है।


गैप बफर में टेक्स्ट को दो [[स्ट्रिंग (कंप्यूटर विज्ञान)]] के रूप में दर्शाया जाता है, जो बहुत अल्प अतिरिक्त जगह लेता है और जिसे लिंक्ड सूचियों जैसे अधिक परिष्कृत [[डेटा संरचना]]ओं की तुलना में बहुत तेज़ी से खोजा और प्रदर्शित किया जा सकता है। चूंकि, टेक्स्ट में विभिन्न समिष्ट पर संचालन और जो अंतर को भरते हैं (एक नए अंतर को बनाने की आवश्यकता होती है) के लिए अधिकांश टेक्स्ट की प्रतिलिपि बनाने की आवश्यकता हो सकती है, जो विशेष रूप से बड़ी फ़ाइलों के लिए अक्षम है। गैप बफ़र्स का उपयोग इस धारणा पर आधारित है कि ऐसी पुनर्प्रतिलिपि इतनी अल्प होती है कि इसकी लागत का अधिक सामान्य सस्ते संचालन पर [[परिशोधन विश्लेषण]] किया जा सकता है। यह टेक्स्ट संपादकों में उपयोग के लिए गैप बफर को [[रस्सी (डेटा संरचना)]] का एक सामान्य विकल्प बनाता है<ref name="chucarroll">Mark C. Chu-Carroll. "[http://scienceblogs.com/goodmath/2009/02/18/gap-buffers-or-why-bother-with-1/ Gap Buffers, or, Don’t Get Tied Up With Ropes?]" ''ScienceBlogs'', 2009-02-18. Accessed 2013-01-30.</ref> जैसे [[Emacs]].<ref name="elisp">[https://www.gnu.org/software/emacs/manual/html_node/elisp/Buffer-Gap.html emacs gap buffer info] Accessed 2013-01-30.</ref>
गैप बफर में टेक्स्ट को दो [[स्ट्रिंग (कंप्यूटर विज्ञान)]] के रूप में दर्शाया जाता है, जो बहुत अल्प अतिरिक्त जगह लेता है और जिसे लिंक्ड सूचियों जैसे अधिक परिष्कृत [[डेटा संरचना]]ओं की तुलना में बहुत तेज़ी से खोजा और प्रदर्शित किया जा सकता है। चूंकि, टेक्स्ट में विभिन्न समिष्ट पर संचालन और जो अंतर को भरते हैं (एक नए अंतर को बनाने की आवश्यकता होती है) के लिए अधिकांश टेक्स्ट की प्रतिलिपि बनाने की आवश्यकता हो सकती है, जो विशेष रूप से बड़ी फ़ाइलों के लिए अक्षम है। गैप बफ़र्स का उपयोग इस धारणा पर आधारित है कि ऐसी पुनर्प्रतिलिपि इतनी अल्प होती है कि इसकी लागत का अधिक सामान्य सस्ते संचालन पर [[परिशोधन विश्लेषण]] किया जा सकता है। यह टेक्स्ट संपादकों में उपयोग के लिए गैप बफर को [[रस्सी (डेटा संरचना)]] का एक सामान्य विकल्प बनाता है<ref name="chucarroll">Mark C. Chu-Carroll. "[http://scienceblogs.com/goodmath/2009/02/18/gap-buffers-or-why-bother-with-1/ Gap Buffers, or, Don’t Get Tied Up With Ropes?]" ''ScienceBlogs'', 2009-02-18. Accessed 2013-01-30.</ref> जैसे [[Emacs]].<ref name="elisp">[https://www.gnu.org/software/emacs/manual/html_node/elisp/Buffer-Gap.html emacs gap buffer info] Accessed 2013-01-30.</ref>

Revision as of 10:34, 4 August 2023

कंप्यूटर विज्ञान में गैप बफर गतिशील सरणी है जो ही समिष्ट के पास दक्ष सम्मिलन और विलोपन संचालन की अनुमति देता है। गैप बफ़र्स विशेष रूप से टेक्स्ट संपादकों में सामान्य हैं, जहां टेक्स्ट में अधिकांश परिवर्तन कर्सर (कंप्यूटर) के वर्तमान समिष्ट पर या उसके निकट होते हैं। टेक्स्ट को दो सन्निहित खंडों में बड़े बफर में संग्रहीत किया जाता है, जिसमें नया टेक्स्ट डालने के लिए उनके मध्य एक अंतर होता है। कर्सर को ले जाने में टेक्स्ट को अंतराल के तरफ से दूसरे तक कॉपी करना सम्मिलित है (कभी-कभी कॉपी करने में अगले संचालन तक देरी हो जाती है जो टेक्स्ट को बदल देता है)। सम्मिलन पहले खंड के अंत में नया टेक्स्ट जोड़ता है; हटाने से यह विलुप्त जाता है।

गैप बफर में टेक्स्ट को दो स्ट्रिंग (कंप्यूटर विज्ञान) के रूप में दर्शाया जाता है, जो बहुत अल्प अतिरिक्त जगह लेता है और जिसे लिंक्ड सूचियों जैसे अधिक परिष्कृत डेटा संरचनाओं की तुलना में बहुत तेज़ी से खोजा और प्रदर्शित किया जा सकता है। चूंकि, टेक्स्ट में विभिन्न समिष्ट पर संचालन और जो अंतर को भरते हैं (एक नए अंतर को बनाने की आवश्यकता होती है) के लिए अधिकांश टेक्स्ट की प्रतिलिपि बनाने की आवश्यकता हो सकती है, जो विशेष रूप से बड़ी फ़ाइलों के लिए अक्षम है। गैप बफ़र्स का उपयोग इस धारणा पर आधारित है कि ऐसी पुनर्प्रतिलिपि इतनी अल्प होती है कि इसकी लागत का अधिक सामान्य सस्ते संचालन पर परिशोधन विश्लेषण किया जा सकता है। यह टेक्स्ट संपादकों में उपयोग के लिए गैप बफर को रस्सी (डेटा संरचना) का एक सामान्य विकल्प बनाता है[1] जैसे Emacs.[2]


उदाहरण

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

आरंभिक राज्य:

यह रास्ता है [ ]बाहर।

उपयोगकर्ता कुछ नया टेक्स्ट सम्मिलित करता है:

इस तरह से दुनिया का प्रारंभ हुआ [ ]।

उपयोगकर्ता प्रारंभ करने से पहले कर्सर ले जाता है; सिस्टम चालें पहले बफ़र से दूसरे बफ़र तक प्रारंभ हुईं।

इस तरह से दुनिया का प्रारंभ हुआ।

उपयोगकर्ता अंतर को भरने वाला टेक्स्ट जोड़ता है; सिस्टम नया अंतर बनाता है:

जैसा कि हम जानते हैं, दुनिया का प्रारंभ इसी तरह हुआ था।

यह भी देखें

  • डायनेमिक ऐरे, गैप बफर का विशेष स्थिति जहां गैप सदैव अंत में होता है
  • जिपर (डेटा संरचना), वैचारिक रूप से गैप बफर का एक सामान्यीकरण।
  • लिंक्ड सूची
  • गोलाकार बफ़र
  • रस्सी (कंप्यूटर विज्ञान)
  • रचना तालिका - ब्रावो और माइक्रोसॉफ्ट वर्ड द्वारा उपयोग की जाने वाली डेटा संरचना

संदर्भ

  1. Mark C. Chu-Carroll. "Gap Buffers, or, Don’t Get Tied Up With Ropes?" ScienceBlogs, 2009-02-18. Accessed 2013-01-30.
  2. emacs gap buffer info Accessed 2013-01-30.


बाहरी संबंध