सदस्य:Jainyjoy.p/सी भाषा में डेटा संरचनाओं

डेटा संरचनाएं का परिचय संपादित करें

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

डेटा संरचनाएं के बुनियादी प्रकार संपादित करें

जैसा कि हम ऊपर चर्चा की, कुछ भी है कि डेटा स्टोर कर सकते हैं एक डेटा strucure के रूप में बुलाया जा सकता है, इसलिए पूर्णांक , फ्लोट , बूलियन , चार आदि , सभी डेटा संरचनाओं हैं। वे आदिम डेटा संरचनाओं के रूप में जाना जाता है। तो फिर हम भी कुछ जटिल डेटा संरचनाओं, जो बड़े और कनेक्ट किए गए डेटा स्टोर करने के लिए उपयोग किया जाता है । सार डेटा संरचना के कुछ उदाहरण हैं: •लिंक्ड सूची • ट्री • ग्राफ • ढेर , कतार आदि इन सभी डेटा संरचनाओं हमें डेटा पर अलग-अलग कार्रवाई करने के लिए अनुमति देते हैं। हम आधारित इन आंकड़ा संरचना है जिस पर आपरेशन के प्रकार की आवश्यकता है का चयन करें। हम हमारे बाद के पाठ में अधिक विवरण में इन आंकड़ा संरचना पर गौर करेंगे।

सारणियों संपादित करें

डेटा संरचना का सरलतम प्रकार एक रेखीय सरणी है। यह लगातार n संख्या , आमतौर पर 1,2,3 , ..., n का एक सेट द्वारा क्रमश: संदर्भित तत्वों के परिमित संख्या n की एक सूची का मतलब है। हम सरणी के लिए नाम का चयन एक तो एक के तत्वों के रूप में A1 सबस्क्रिप्ट संकेतन से चिह्नित कर रहे हैं, A2, A3 , ..., एक , या कोष्ठक संकेतन एक (1) , ए (2), ए (3 ), ... , ए (एन) या ब्रैकेट संकेतन एक द्वारा [1 ], एक [2 ], एक [3 ], ... , एक [ एन] ।

लिंक्ड सूची संपादित करें

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

पेड़ संपादित करें

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

ढेर संपादित करें

एक ढेर, एक भी अंतिम -इन-फर्स्ट - आउट (LIFO) प्रणाली है, जहां प्रविष्टि और विलोपन जगह पर ही एक छोर शीर्ष बुलाया ले जा सकते हैं कहा जाता है । यह संरचना एक वसंत प्रणाली में बर्तन का ढेर करने के लिए इसके संचालन में इसी तरह की है

कतार संपादित करें

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

एल्गोरिथ्म क्या है? संपादित करें

एक एल्गोरिथ्म निर्देश या तर्क, आदेश में लिखा की एक परिमित सेट, एक निश्चित पूर्वनिर्धारित कार्य को पूरा करने के लिए है। एल्गोरिथ्म यह एक समस्या है, जो या तो pseudocode या एक फ़्लोचार्ट का उपयोग कर के रूप में एक अनौपचारिक उच्च स्तरीय विवरण के रूप में व्यक्त किया जा सकता है की सिर्फ मुख्य तर्क (समाधान) है, पूरा कोड या कार्यक्रम नहीं है। एक एल्गोरिथ्म, कुशल और तेजी से हो सकता है अगर यह कम समय निष्पादित करने के लिए लेता है और कम स्मृति अंतरिक्ष की खपत कहा जाता है। एक एल्गोरिथ्म के प्रदर्शन को निम्नलिखित गुण के आधार पर मापा जाता है: 1. समय जटिलता 2. अंतरिक्ष जटिलता

एल्गोरिदम केअंतरिक्ष जटिलता संपादित करें

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

एल्गोरिदम के समय जटिलता संपादित करें

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