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

एक सरणीएक आदेशित रैखिक डेटा संरचना है जिसमें एक है तत्वों का संग्रह (मान या चर), प्रत्येक को कम से कम एक सूचकांक द्वारा पहचाना जाता है, सन्निहित स्मृति स्थानों में संग्रहीत।

एक सरणी को आमतौर पर संग्रहीत किया जाता है ताकि प्रत्येक तत्व की स्थिति को गणितीय सूत्र द्वारा इसके सूचकांक टपल से गणना की जा सके।

कुछ भाषाओं में (सी, जावा, आदि) सरणी की लंबाई पहले से निर्धारित होनी चाहिए। अन्य भाषाओं में (रूबी, पायथन, एलआईएसपी, हैक्स, आदि) सरणी की लंबाई गतिशील रूप से बढ़ती है क्योंकि तत्व जोड़े जाते हैं।

इस टैग के साथ एक प्रश्न टैग करते समय, उस प्रोग्रामिंग भाषा के साथ प्रश्न को भी टैग करें जिसका उपयोग किया जा रहा है।

विशिष्ट भाषाओं में सरणी

  • C # सरणियाँ वास्तव में वस्तुएं हैं और सी और सी ++ की तरह सन्निहित स्मृति के केवल पता योग्य क्षेत्र नहीं हैं। एरे सभी प्रकार के प्रकार का सार आधार है। आप अर्रे आधार प्रकार के गुणों और अन्य वर्ग के सदस्यों का उपयोग कर सकते हैं।
  • सी सरणियाँ एक चर के साथ एक एकल चर नाम के तहत संबंधित डेटा को स्टोर करने के लिए कार्य करती हैं, जिसे एक सबस्क्रिप्ट के रूप में भी जाना जाता है। उन्हें पंक्ति-प्रमुख क्रम में संग्रहीत किया जाता है, जिसका अर्थ है कि अंतिम उपधारा सबसे तेजी से बदलती है। किसी सरणी को केवल एक सूची या उसी प्रकार के चर के लिए समूहीकृत करने का आदेश देना सबसे आसान है। जैसे, सरणियाँ अक्सर प्रोग्रामर को कुशलतापूर्वक और सहज ज्ञान युक्त डेटा के संग्रह को व्यवस्थित करने में मदद करती हैं।
  • C ++ C से कच्ची सरणियाँ प्राप्त करता है और संकलन समय के लिए अपनी स्वयं की श्रेणी-श्रेणी std::arrayजोड़ता है सरणी आकार, std::vectorके लिए रनटाइम गतिशील आकार सरणियाँ। इसमें std::unique_ptr, चौकीदारी x3}}
  • उद्देश्य C, C से कच्ची सरणियाँ प्राप्त करता है और उसे जोड़ता है डायनेमिक सरणियों के लिए स्वयं सरणी वर्ग NSArray और NSMutableArray
  • रूबी के सामान्य सरणी वर्ग को array कहा जाता है।
  • पायथन में, सामान्य सरणी डेटाटाइप को list कहा जाता है, जबकि array प्रकार का उपयोग सजातीय सरणियों के लिए किया जाता है।
  • NumPy में एक शक्तिशाली N- आयामी सरणी है कई क्षमताओं के साथ
  • PHP सरणियों को आदेशित नक्शे के रूप में लागू किया जाता है जिसमें संख्यात्मक या स्ट्रिंग कुंजियों का मिश्रण हो सकता है।
  • जावास्क्रिप्ट सरणियों सिर्फ एक के साथ वस्तुओं रहे हैं विभिन्न प्रोटोटाइप (सरणी कार्यों जैसी संरचनाओं के लिए उपयोगी , संख्यात्मक सूचकांक मूल्यों के साथ तार के रूप में संग्रहीत (सभी जावास्क्रिप्ट कुंजी तार हैं)। अन्य वस्तुओं के विपरीत, आप कुंजियों को एक्सेस करने के लिए डॉट नोटेशन का उपयोग नहीं कर सकते हैं - केवल वर्ग ब्रैकेट नोटेशन।
  • हेक्से में, एक सरणी में एक प्रकार का पैरामीटर होता है जो प्रकार से मेल खाता है तत्वों का संग्रह। उनके कंस्ट्रक्टर new Array() या [1, 2, 3] का उपयोग करके एरर्स बनाए जा सकते हैं। लेकिन यह भी समझ का उपयोग: [for (i in 0...10) if (i % 2 == 0) i]। निश्चित आकार के भंडारण के लिए सार प्रकार haxe.ds.Vector का उपयोग किया जा सकता है, जो कुछ लक्ष्य पर ऐरे से तेज हो सकता है और कभी धीमा नहीं होता।
  • स्काला में, सामान्य सरणी वर्ग को Array कहा जाता है। एक तत्व से एक तत्व प्राप्त करने के लिए आप कोष्ठक का उपयोग करते हैं (अधिकांश भाषाएं वर्ग कोष्ठक का उपयोग करती हैं)।
  • जावा में, एक सरणी एक कंटेनर ऑब्जेक्ट है जो एक एकल प्रकार के मूल्यों की एक निश्चित संख्या रखता है। किसी सरणी की लंबाई तब बनाई जाती है जब सरणी बनाई जाती है। निर्माण के बाद, इसकी लंबाई तय हो गई है।
  • पर्ल में, सरणी चर को @ उपसर्ग और सरणियों के साथ निरूपित किया जाता है कोष्ठकों के साथ घोषित किए जाते हैं। $# के साथ उपसर्ग को बदलना अंतिम सूचकांक देता है।
  • जंग में, सरणियाँ उसी प्रकार के डेटा के समूह हैं जो स्मृति में सन्निहित हैं, इसलिए सी के साथ संचार करते समय उनका उपयोग किया जा सकता है। सरणी की लंबाई निर्धारित है।
  • स्विफ्ट में, एक सरणी जिसमें निर्दिष्ट मान शामिल हैं, स्वचालित रूप से सरणी के तत्वप्रकार का उल्लेख करते हुए। स्विफ्ट का उपयोग करके अपने कोड में सरणियों को बनाना आसान है सरणी शाब्दिक: बस वर्ग कोष्ठक के साथ मानों की अल्पविराम से अलग सूची के चारों ओर।
  • पास्कल में, सरणियों की घोषणा तत्वों की संख्या के बजाय सूचकांक सीमा को निर्दिष्ट करती है; इसलिए parray: array [1..25] of real; 25 वास्तविक संख्याओं का एक-आधारित सरणी घोषित करता है (वैध तत्व parray[1] thru parray[25]) हैं, जबकि parray: array [0..24] of real; शून्य-आधारित ('C- शैली') घोषित करता है ) समान आकार की सरणी (पहला तत्व parray[0]) है। पास्कल एरे इंडेक्स रेंज में निगेटिव नंबर शामिल हो सकते हैं!

विशेषताएँ

किसी सरणी के तत्व आमतौर पर 0-पहले सूचकांक के साथ निर्दिष्ट होते हैं, उदाहरण के लिए, myarray[0] myarray के पहले तत्व का प्रतिनिधित्व करेगा। myarray[n] (जहां n एरे माइनस 1 की लंबाई है) सरणी में अंतिम तत्व का प्रतिनिधित्व करेगा। हालाँकि, कुछ भाषाएं जैसे पुराने फ़ोर्ट्रान और लुआ 1 का उपयोग प्रारंभिक सूचकांक के रूप में करते हैं।

कुछ भाषाओं (C ++, Java, C #) में "मूल सरणियाँ" और संग्रह हैं। मूल सरणियों को सीधे संकलक द्वारा समर्थित किया जाता है, एक निश्चित आकार है, और केवल सूचकांक द्वारा तत्व का उपयोग प्रदान करते हैं। संग्रह, जावा के ArrayList की तरह, इन मूल सरणियों के शीर्ष पर लागू सिस्टम लाइब्रेरी कक्षाएं हैं और विभिन्न तरीकों की एक विस्तृत श्रृंखला है। ऐसे मामलो मे, साधारण सरणियों के नाम के लिए टैग arraysका उपयोग किया जाना चाहिए।

एरे को सांख्यिकीय रूप से आवंटित या गतिशील रूप से आवंटित किया जा सकता है। जिस तरह से आप सरणी तक पहुँचते हैं और उसके प्रकार को अलग-अलग रूप में घोषित और आवंटित किया जाता है, उसके आधार पर।

Arrays में कई सूचकांक हो सकते हैं। उदाहरण के लिए, एक अनुक्रमणिका के साथ एक सरणी (जैसे array[0]) एक-आयामी सरणी के रूप में जाना जाता है। यदि इसके दो सूचकांक हैं (जैसे array[0][0]) तो इसे दो आयामी माना जाता है और शायद एक ग्रिड के रूप में कल्पना की। बहुआयामी सरणियाँ, या, दूसरे शब्दों में, कई सूचकांकों वाले सरणियों को मेट्रिस कहा जाता है, या एक मैट्रिक्स विलक्षण है।

संदर्भ

संबंधित टैग

जहां विशिष्ट प्रकार के सरणियों के बारे में बात कर रहे हैं, इन संबंधित टैगों का उपयोग करें: