एल्गोरिदम की संरचना के विषय पर प्रस्तुति। बुनियादी एल्गोरिथम संरचनाएँ
कलन विधि और एल्गोरिथम संरचनाएँ
मोसिना ए.यू.
कलन विधि किसी समस्या को हल करते समय क्रियाओं का एक कड़ाई से परिभाषित अनुक्रम है।
एल्गोरिदम में कई चरण होते हैं.
एल्गोरिथम चरण एल्गोरिथम की प्रत्येक व्यक्तिगत क्रिया है।
"एल्गोरिदम क्रियाओं का एक क्रम है।"
निर्वाहक एक वस्तु है जो क्रियाओं का एक विशिष्ट समूह निष्पादित करती है।
कलाकार कोई व्यक्ति, रोबोट, जानवर या कंप्यूटर हो सकता है।
निष्पादक आदेश प्रणाली (एसकेआई) यह आदेशों का एक सेट है जिसे कलाकार निष्पादित कर सकता है।
कलाकार पर्यावरण - वह वातावरण जिसमें कलाकार कार्य करता है।
- एल्गोरिदम विकसित करता है: मानव
- एल्गोरिदम द्वारा निष्पादित किया जाता है: लोग और उपकरण - कंप्यूटर, रोबोट, मशीनें, उपग्रह, कॉम्प्लेक्स उपकरण, बच्चों के खिलौने।
- कलाकार किसी दिए गए एल्गोरिदम के अनुसार समस्या को हल करता है, निर्देशों (प्रोग्राम) का सख्ती से पालन करता है, बिना इस बात पर चर्चा किए या चर्चा किए कि वह ऐसा क्यों कर रहा है।
व्यायाम: निम्नलिखित प्रकार के कार्य करने वालों के नाम बताइए:
यार्ड में कचरा साफ़ करना
स्कूल में बच्चों को पढ़ाना
कार ड्राइविंग
उत्तर बोर्ड पर है
भोजन पकाना
किसी दस्तावेज़ को प्रिंटर पर प्रिंट करना
अवयव- प्रत्येक व्यक्तिगत कार्रवाई और संपूर्ण एल्गोरिदम को पूरा करने में सक्षम होना चाहिए
क्षमता- चरणों की एक सीमित संख्या में परिणाम प्राप्त करना
पृथक्ता(असंतोष, अलगाव) - एल्गोरिदम को चरणों में विभाजित करना
यह सिद्धांत कि मनुष्य के कार्य स्वतंत्र नहीं होते(निश्चितता, सटीकता) - प्रत्येक क्रिया को सख्ती से और स्पष्ट रूप से परिभाषित किया जाना चाहिए
जन चरित्र- समान समस्याओं को हल करने के लिए एल्गोरिदम का उपयोग
एल्गोरिदम के गुण
प्रेजेंटेशन फॉर्म द्वारा एल्गोरिदम का वर्गीकरण :
मौखिक
तालिका का
ग्राफ़िक (ब्लॉक आरेख)
सॉफ़्टवेयर
ब्लॉक आरेख – ग्राफ़िक प्रदर्शन परस्पर जुड़े कार्यात्मक ब्लॉकों के अनुक्रम के रूप में एल्गोरिदम ( मानक ग्राफिक तत्व ), जिनमें से प्रत्येक एक या अधिक क्रियाएं करने से मेल खाता है।
ब्लॉक आरेखों में बुनियादी परंपराएँ
प्रतीक
ब्लॉक का उद्देश्य
एल्गोरिथम का प्रारंभ या अंत
डेटा इनपुट या आउटपुट.
ब्लॉक के अंदर, डेटा को अल्पविराम से अलग करके सूचीबद्ध किया गया है।
प्रक्रिया।
ब्लॉक के अंदर गणित लिखा हुआ है. डेटा प्रोसेसिंग के लिए सूत्र और संचालन।
हालत की जाँच कर रहा हूँ.
ब्लॉक के अंदर तार्किक स्थितियाँ लिखी होती हैं। इसके दो आउटपुट हैं हां (+) और नहीं (-)।
दिशा।
संरचना द्वारा एल्गोरिदम का वर्गीकरण:
रैखिक (निम्नलिखित)
शाखित (शाखा, विकल्प, विकल्प)
लूप (दोहराएँ)
सहायक
संयुक्त
रैखिक एल्गोरिथ्म
रैखिक एल्गोरिथ्म एक एल्गोरिथ्म है जिसके चरण एक के बाद एक क्रमिक रूप से निष्पादित होते हैं।
(उदाहरण: पोर्टफोलियो संग्रह एल्गोरिदम)।
रैखिक एल्गोरिथ्म की मूल संरचना:
टीम सीरीज 1
टीम सीरीज 2
टीम एन सीरीज
काम
एक मनमाना त्रिभुज की तीन भुजाओं के आधार पर उसके परिमाप की गणना करें।
समाधान:
प्रथम चरण: समस्या का निरूपण.
आरंभिक डेटा: ए, बी, सी - एक मनमाना त्रिभुज की भुजाएँ
उत्पादन: पी - त्रिभुज का परिमाप।
चरण 2: गणित का मॉडल।
पी=ए+बी+सी
चरण 3: एक एल्गोरिदम तैयार करना
शुरू
प्रवेश करना
निष्कर्ष
अंत
№ 1 और एल्गोरिदम फ़्लोचार्ट का उपयोग करना , X=2 पर फ़ंक्शन Y के मान की गणना करें,
शुरू
इनपुट: एक्स
Z=8*X
- समाधान:
- एक्स=2
- जेड = 8 * 2 = 16
- जेड = √16 = 4
- जेड = 4 – 1 = 3
- वाई = 3 * 2 = 6
- वाई = 6/3 = 2
जेड = जेड - 1
वाई=3*एक्स
वाई=वाई/जेड
आउटपुट: वाई
- एल्गोरिदम विभिन्न प्रकार की वस्तुओं की परिवर्तन प्रक्रियाओं का वर्णन कर सकते हैं। शब्द "एल्गोरिदम" स्वयं "एल्गोरिदमी" से आया है - 9वीं शताब्दी के उत्कृष्ट गणितज्ञ अल-ख्वारिज्मी के नाम की लैटिन वर्तनी, जिन्होंने अंकगणितीय संचालन करने के लिए नियम तैयार किए।
- कलन विधि- आदेशों का एक सेट जो कार्यों की एक सीमित संख्या में किसी समस्या को हल करने के परिणाम को प्राप्त करने के लिए कलाकार के कार्यों के क्रम का वर्णन करता है।
एल्गोरिदम के गुण:
1. विसंगति- एल्गोरिदम को किसी समस्या को हल करने की प्रक्रिया को निश्चित के क्रमिक निष्पादन के रूप में प्रस्तुत करना चाहिए सरल कदम. जिसमें एल्गोरिथम के प्रत्येक चरण को पूरा करने के लिए एक सीमित समय की आवश्यकता होती है, अर्थात्, स्रोत डेटा का परिणामों में परिवर्तन समय पर विवेकपूर्वक किया जाता है।
2. नियतिवाद (निश्चितता)। समय के प्रत्येक क्षण में, कार्य का अगला चरण सिस्टम की स्थिति द्वारा विशिष्ट रूप से निर्धारित होता है।इस प्रकार, एल्गोरिदम समान प्रारंभिक डेटा के लिए समान परिणाम (उत्तर) उत्पन्न करता है।
3. स्पष्टता- एल्गोरिदम में केवल वे कमांड शामिल होने चाहिए जो कलाकार के लिए उपलब्ध हैं और उसके कमांड सिस्टम में शामिल हैं।
4. पूर्णता (चरम)- सही ढंग से निर्दिष्ट प्रारंभिक डेटा के साथ, एल्गोरिदम को अपना काम पूरा करना होगा और चरणों की एक सीमित संख्या में परिणाम देना होगा।
5. जन चरित्र (सार्वभौमिकता)।एल्गोरिदम इनपुट डेटा के विभिन्न सेटों पर लागू होना चाहिए।
6. प्रभावशीलता- कुछ परिणामों के साथ एल्गोरिथ्म का पूरा होना।
एल्गोरिदम लिखने के तरीके:
1. मौखिक रिकॉर्डिंग विधि
एल्गोरिदम लिखने का मौखिक तरीका डेटा प्रोसेसिंग के क्रमिक चरणों का वर्णन है। एल्गोरिथ्म एक मनमाना प्रस्तुति में निर्दिष्ट है प्राकृतिक भाषा में .
उदाहरण
एल्गोरिथम लिखने के मौखिक तरीके के उदाहरण के रूप में, एक आयत का क्षेत्रफल ज्ञात करने के लिए एक एल्गोरिथम पर विचार करें
जहाँ S आयत का क्षेत्रफल है; ए, बी - इसकी भुजाओं की लंबाई।
जाहिर है, ए, बी को पहले से निर्दिष्ट किया जाना चाहिए, अन्यथा समस्या का समाधान नहीं किया जा सकता है।
एल्गोरिदम लिखने के तरीके
एल्गोरिथम लिखने का मौखिक तरीका इस तरह दिखता है:
- एल्गोरिथम की शुरुआत.
- भुजा a का संख्यात्मक मान निर्धारित करें।
- भुजा b का संख्यात्मक मान निर्धारित करें।
- सूत्र S=a*b का उपयोग करके आयत के क्षेत्रफल S की गणना करें।
- गणना का परिणाम आउटपुट करें.
- एल्गोरिथम का अंत.
एल्गोरिदम लिखने के तरीके
2. ग्राफिक विधि
जब ग्राफ़िक रूप से प्रस्तुत किया जाता है, तो एल्गोरिदम को परस्पर जुड़े कार्यात्मक ब्लॉकों के अनुक्रम के रूप में दर्शाया जाता है, जिनमें से प्रत्येक एक या अधिक क्रियाओं के निष्पादन से मेल खाता है।
इस आलेखीय निरूपण को फ़्लोचार्ट या फ़्लोचार्ट कहा जाता है। फ़्लोचार्ट में, प्रत्येक प्रकार की क्रिया (प्रारंभिक डेटा दर्ज करना, अभिव्यक्तियों के मूल्यों की गणना करना, स्थितियों की जांच करना, क्रियाओं की पुनरावृत्ति को नियंत्रित करना, प्रसंस्करण पूरा करना आदि) एक ब्लॉक प्रतीक के रूप में दर्शाए गए ज्यामितीय आकृति से मेल खाती है। ब्लॉक प्रतीक संक्रमण रेखाओं से जुड़े होते हैं जो क्रियाओं के निष्पादन का क्रम निर्धारित करते हैं। निम्नलिखित सबसे अधिक उपयोग किए जाने वाले प्रतीक हैं।
एल्गोरिदम लिखने के तरीके
फ़्लोचार्ट तत्व
नाम
कम्प्यूटेशनल ब्लॉक (कम्प्यूटेशनल ब्लॉक)
कम्प्यूटेशनल क्रियाएँ या क्रियाओं का क्रम
तर्क ब्लॉक (स्थिति ब्लॉक)
डेटा इनपुट/आउटपुट ब्लॉक
कुछ शर्तों के आधार पर एल्गोरिदम निष्पादन की दिशा चुनना
डेटा इनपुट (आउटपुट) के लिए सामान्य पदनाम (भौतिक मीडिया की परवाह किए बिना)
आदि अंत)
किसी एल्गोरिथम की शुरुआत या अंत, सबरूटीन में प्रवेश या निकास
एल्गोरिदम लिखने के तरीके
फ़्लोचार्ट तत्व
नाम
उपयोगकर्ता प्रक्रिया (सबरूटीन)
मानक प्रोग्राम या सबरूटीन का उपयोग करके गणना
संशोधन ब्लॉक
फ़ंक्शन ऐसी क्रियाएं करता है जो एल्गोरिथम के बिंदु (उदाहरण के लिए, लूप हेडर) बदलती हैं
योजक
सूचना प्रवाह के बीच टूटी रेखाओं द्वारा संबंध का संकेत देना
एल्गोरिदम लिखने के तरीके
उदाहरण
एक आयत के क्षेत्रफल की गणना के लिए एल्गोरिदम
एल्गोरिदम लिखने के तरीके
3. स्यूडोकोड
एक सशर्त एल्गोरिथम भाषा में एल्गोरिदम का अर्ध-औपचारिक विवरण, जिसमें प्रोग्रामिंग भाषा के दोनों तत्व और प्राकृतिक भाषा वाक्यांश, आम तौर पर स्वीकृत गणितीय नोटेशन आदि शामिल हैं।
स्यूडोकोड की कोई एकल या औपचारिक परिभाषा नहीं है, इसलिए विभिन्न स्यूडोकोड संभव हैं, जो फ़ंक्शन शब्दों और बुनियादी (बुनियादी) निर्माणों के सेट में भिन्न होते हैं।
एल्गोरिदम लिखने के तरीके
उदाहरण
- शुरू करना। बिंदु 2 पर जाएँ.
- संख्या ए और बी दर्ज करना। बिंदु 3 पर जाएँ.
- S=a*b की गणना करें. बिंदु 4 पर जाएँ.
- निष्कर्ष एस. बिंदु 5 पर जाएँ.
- अंत।
एल्गोरिदम लिखने के तरीके
4. सॉफ्टवेयर विधि
चयनित प्रोग्रामिंग भाषा में एल्गोरिदम को रिकॉर्ड करना।
उदाहरण
राइटलन('');
Writeln('S=' , S);
एल्गोरिदम के प्रकार
1. रैखिक एल्गोरिथ्म
यह एक एल्गोरिदम है जिसमें केवल निम्नलिखित संरचना है।
अगले- यह एक के बाद एक क्रियाओं की व्यवस्था है।
एल्गोरिदम के प्रकार
2. ब्रांचिंग एल्गोरिदम (यदि...तो...अन्यथा...)
यह एक एल्गोरिदम है जिसमें एक शाखा संरचना होती है।
शाखाओं में- यह किसी शर्त की पूर्ति के आधार पर कार्रवाई का विकल्प है।
एल्गोरिदम के प्रकार
3. चक्रीय एल्गोरिथ्म
यह एक एल्गोरिदम है जिसमें लूप संरचना होती है।
चक्र- यह किसी क्रिया का बार-बार दोहराया जाना है।
एल्गोरिदम के प्रकार
4. संयुक्त एल्गोरिथ्म
एक एल्गोरिदम जिसमें एक साथ कई संरचनाएं शामिल होती हैं।
ब्लॉक की चौड़ाई पिक्सल
इस कोड को कॉपी करें और अपनी वेबसाइट पर पेस्ट करें
स्लाइड कैप्शन:
एल्गोरिदम और डेटा संरचनाएं साहित्य:
- डी. नट. कंप्यूटर प्रोग्रामिंग की कला। टी. 1-3, एम.: मीर, 1978, 1995, आदि।
- एन. विर्थ. एल्गोरिदम और डेटा संरचनाएं। एम.: मीर, 1989.
- जानकारीजिसे कंप्यूटर पर प्रोसेस किया जाना चाहिए मतिहीनता, वास्तविक दुनिया के कुछ टुकड़े प्रदर्शित कर रहा है। अर्थात्, वह टुकड़ा जो हल की जा रही समस्या का विषय क्षेत्र है। इसे हल करने के लिए, हम पहले निर्माण करते हैं सूचना, और सामान्य मामले में गणितीय नमूनाअध्ययन विषय क्षेत्रऔर किसी मौजूदा को चुना जाता है या नया बनाया जाता है कलन विधिसमस्या का समाधान.
- जानकारी हमेशा materializes, प्रपत्र में दर्शाया गया है संदेशों. सामान्य तौर पर, एक संदेश कुछ का प्रतिनिधित्व करता है दर्ज कराई भौतिक संकेत . संकेत- यह किसी वस्तु के समय या स्थान में परिवर्तन, विशेष रूप से, कुछ भौतिक मात्रा का एक पैरामीटर, उदाहरण के लिए, चुंबकीय क्षेत्र प्रेरण (जानकारी संग्रहीत करते समय, अधिक सटीक रूप से संदेशचुंबकीय मीडिया पर) या विद्युत सर्किट में वोल्टेज स्तर (प्रोसेसर चिप्स या रैम में)।
- अलगएक संदेश एक अनुक्रम है लक्षण(संकेत मान) कुछ से अंतिम वर्णमाला(सिग्नल पैरामीटर मानों का एक सीमित सेट), विशेष रूप से, कंप्यूटर के लिए यह है बाइनरी वर्णमाला के वर्णों का एक क्रम, अर्थात बिट्स का एक क्रम.
- कंप्यूटर डेटाये अलग-अलग संदेश हैं जो कंप्यूटर द्वारा प्रयोग करने योग्य रूप में प्रस्तुत किए जाते हैं, कंप्यूटर समझने योग्य. कंप्यूटर प्रोसेसर के लिए, कोई भी डेटा है असंरचितबिट्स का अनुक्रम (कभी-कभी शब्द का प्रयोग किया जाता है प्रवाहबिट्स)।
- इस क्रम की विशिष्ट व्याख्या कार्यक्रम पर निर्भर करती है प्रस्तुति प्रपत्र और डेटा संरचनाएँ, जो चयनित हैं प्रोग्रामर. यह विकल्प अंततः हल की जा रही समस्या और डेटा पर कार्रवाई करने की सुविधा पर निर्भर करता है।
- तात्कालिक अर्थयह अपरिवर्तनीयप्रोग्राम ऑब्जेक्ट जो स्वयं का प्रतिनिधित्व करते हैं: संख्याएं (25, 1.34ई-20), प्रतीक ('ए', '!'), स्ट्रिंग्स ('मैट्रिक्स तत्व दर्ज करें');
- स्थिरांककुछ मानों को निर्दिष्ट नाम हैं (const pi=3.1415926)।
- चरये ऐसी वस्तुएं हैं जो एक मान ले सकती हैं, इसे बिना बदले सहेज सकती हैं, और कुछ क्रियाएं निष्पादित होने पर इसे बदल सकती हैं (var k:integer, x:real, a:array)।
- अभिव्यक्ति और कार्य मान. अभिव्यक्ति और फ़ंक्शन एक निश्चित तरीके से लिखे गए मानों की गणना के लिए नियम हैं: k*x+ sqrt(x)।
- कार्यक्रमों में डेटा में शामिल हैं:
- डेटा प्रकार सबसे महत्वपूर्ण विशेषता है जो निर्धारित करती है:
- मान्य मानों का सेट;
- कई ऑपरेशन जो एक मूल्य पर किए जा सकते हैं;
- मूल्य संरचना (अदिश, वेक्टर, आदि);
- अर्थ के मशीनी निरूपण की एक विधि।
- कंप्यूटर विज्ञान में विभिन्न प्रकृति के डेटा के कंप्यूटर प्रतिनिधित्व की विशेषताओं को प्रदर्शित करने के लिए कंप्यूटर विषयों का उपयोग सबसे महत्वपूर्ण है डेटा प्रकार की अवधारणा.
- किसी अचर, चर या व्यंजक का प्रकार किसके द्वारा निर्धारित किया जा सकता है? उपस्थिति(छवि से) या बिना कोई गणना किए विवरण से।
- किसी भी ऑपरेशन या फ़ंक्शन के लिए तर्क की आवश्यकता होती है और एक बहुत ही विशिष्ट प्रकार का परिणाम देता है। तर्कों के प्रकार और संचालन के परिणाम भाषा के सुपरिभाषित नियमों के अनुसार निर्धारित किए जाते हैं।
- डेटा प्रकार अवधारणा के बुनियादी सिद्धांत
- प्रोग्रामिंग भाषाओं में:
- विभिन्न प्रकार के डेटा प्रकार और संरचनाएँ
- कंप्यूटर विज्ञान बड़ी संख्या में विभिन्न का उपयोग करता है प्रकार, विभिन्न डेटा संरचनाएं, जिनका उपयोग किया जाता है मॉडलिंगविचाराधीन समस्याओं में आने वाली वस्तुएँ।
- यदि किसी दिए गए एल्गोरिदम की संरचना निष्पादन के दौरान नहीं बदलती है, तो ऐसी संरचना पर विचार किया जाता है स्थिर , स्थिर डेटा संरचनाएँ अपरिवर्तित मौजूद है दौरान एल्गोरिथम का संपूर्ण निष्पादन समय.
- अर्थ अदिश(सरल, परमाणु)प्रकार प्रस्तुत किया गया चिकना एकघटक (उदाहरण: समय, तापमान)।
- गतिशील संरचनाएँ बनते, संशोधित और नष्ट होते हैं जरुरत के अनुसार एल्गोरिथम के निष्पादन के दौरान किसी भी समय.
- अर्थ STRUCTURED(समग्र)प्रकार प्रस्तुत किया गया अधिक कैसे एकघटक (उदाहरण: वेक्टर, मैट्रिक्स, तालिका, आदि)।
- पूर्वनिर्धारित (पूर्वपरिभाषित) हैं - मानक और प्रोग्राम-परिभाषित प्रकार। के लिए मानकएक प्रोग्रामिंग भाषा के विवरण में प्रकार इसकी सभी विशेषताओं को परिभाषित करते हैं - मूल्यों का एक सेट, संचालन का एक सेट, संरचना और मूल्य का मशीन प्रतिनिधित्व। के लिए नव परिभाषितप्रकार, भाषा एक प्रोग्राम में मूल्यों के एक सेट और मूल्य की संरचना को निर्दिष्ट करने के लिए एक तंत्र प्रदान करती है। आमतौर पर एक नया प्रकार मौजूदा मानक के आधार पर बनाया जाता है। इसलिए, भाषा विवरण में इस प्रकार के कई ऑपरेशन और मशीनी प्रतिनिधित्व तय होते हैं।
- अदिश (सरल, परमाणु) प्रकार:
- साबुत;
- असली;
- तार्किक (बूलियन);
- प्रतीकात्मक;
- संरचित (मिश्रित) प्रकार:
- सारणी;
- रिकॉर्डिंग;
- फ़ाइल(अनुक्रम);
- गुच्छा;
- वस्तु (वर्ग) प्रकार;
- अदिश और संरचित प्रकारों के सभी संभावित संयोजन;
- संदर्भ प्रकार.
- स्थैतिक प्रकार (डेटा संरचनाएं)
- सबसे अधिक उपयोग किए जाने वाले पूर्वनिर्धारित अदिश प्रकार हैं: पूर्णांक ( पूर्णांक), असली ( असली), प्रतीकात्मक ( चार), बूलियन ( बूलियन).
- पूर्णांक सटीक मान. उदाहरण: 73, -98, 5, 19674.
- मशीन प्रतिनिधित्व: निश्चित-बिंदु प्रारूप। मानों की सीमा फ़ील्ड की लंबाई से निर्धारित होती है। संचालन: +, -, *, div, mod,=,<, и т.д.
- प्रकार पूर्णांक
- गैर-पूर्णांक सन्निकटन. उदाहरण: 0.195, -91.84, 5.0
- मशीन प्रतिनिधित्व: फ़्लोटिंग पॉइंट प्रारूप। मानों की सीमा और सटीकता फ़ील्ड की लंबाई से निर्धारित होती है। संचालन: +, -, *, /, =,<, и т.д.
- प्रकार असली
- एकल पाठ वर्ण. उदाहरण: 'ए', '!', '5'।
- मशीन प्रतिनिधित्व: ASCII प्रारूप। मानों का सेट कोड तालिका और कीबोर्ड क्षमताओं द्वारा निर्धारित किया जाता है। संचालन: +, =,<, и т.д.
- प्रकार चार
- दो बूलियन मान असत्य और सत्य हैं। इसके अलावा, झूठा
- मशीन प्रतिनिधित्व ─ शून्य और एक बिट मान: गलत को 0 एन्कोड किया गया है, सत्य ─ 1. संचालन: , , , =,< и т.д.
- प्रकार बूलियन
- नए अदिश पृथक प्रकारों के निर्माण के लिए बुनियादी तंत्र: गणना, प्रतिबंध। परिभाषा में हस्तांतरणीयप्रकार, सभी संभावित मानों की एक सूची तय की जाती है, कई ऑपरेशन भाषा में पहले से परिभाषित होते हैं। परिभाषा में सीमितवैध मानों के एक सेट के रूप में प्रकार तय किया गया है सबसेटकुछ असतत प्रकार के मानों का एक सेट, जिसे इस मामले में परिभाषित के संबंध में आधार प्रकार कहा जाता है।
- असतत और सतत अदिश प्रकार होते हैं। अनेक अर्थ अलगपरिमित या गणनीय प्रकार। अनेक अर्थ निरंतरगणनीय प्रकार से अधिक. असतत मानक प्रकारों में पूर्णांक, वर्ण और तार्किक शामिल हैं। निरंतर मानक प्रकारों में वास्तविक शामिल हैं।
- संरचित (मिश्रित) प्रकारों की विशेषता होती है: मूल्य घटकों की संख्या और संभावित प्रकार, साथ ही साथ व्यक्तिगत मूल्य घटक तक पहुंचने का तरीका।
- कंप्यूटर विज्ञान में वैक्टर और मैट्रिक्स के समान संरचनाओं को आमतौर पर कहा जाता है सरणियों. सभी सरणी तत्व होने चाहिए एक और एक हीप्रकार।
- सरणी या नियमित प्रकार
- एक व्यक्तिगत सरणी तत्व तक पहुंचने (देखने) के लिए, एक इंडेक्स या कई इंडेक्स (डब्ल्यू; डब्ल्यू; ए) का उपयोग किया जाता है। सूचकांक ऐसे भाव हो सकते हैं जिनके मान पूर्वनिर्धारित सीमाओं के भीतर मनमाने ढंग से भिन्न हो सकते हैं। इसलिए, वे कहते हैं कि सरणी तत्वों में है सीधी पहुंच.
- तालिका पंक्तियों के समान संरचनाएँ कहलाती हैं अभिलेख. अभिलेखों के घटकों को सामान्यतः कहा जाता है खेत. विभिन्न फ़ील्ड (तालिका कॉलम) हो सकते हैं अलगप्रकार. किसी रिकॉर्ड के अलग-अलग फ़ील्ड तक पहुंचने के लिए, वे निश्चित और अपरिवर्तनीय हैं नाम. उदाहरण के लिए: विजय दिवस। महीना: = मई. फ़ील्ड को किसी भी क्रम में प्रसंस्करण के लिए चुना जा सकता है, इसलिए रिकॉर्ड घटकों तक पहुंच कहा जाता है सीधा.
- रिकार्ड या संयुक्त प्रकार
- विजय दिवस:
- फ़ाइल (अनुक्रम)
- मुख्य डेटा संरचना जिसका उपयोग बाहरी उपकरणों (चुंबकीय डिस्क, टेप, आदि) पर जानकारी संग्रहीत करने के लिए किया जाता है फ़ाइलेंया दृश्यों. फ़ाइल को हमेशा बाहरी डिवाइस पर माना जाता है। इस मामले में, फ़ाइल घटकों की संख्या अज्ञात है; सभी घटक एक ही प्रकार के होने चाहिए। घटकों तक पहुंच ─ सुसंगत.
- गगारिन की उड़ान:
- गुच्छा
- कई गणितीय और सूचनात्मक समस्याओं में प्रत्यक्ष या अप्रत्यक्ष रूप से मुख्य गणितीय वस्तु का उपयोग करने की आवश्यकता होती है सेट. किसी सेट से संबंधित डेटा प्रकार परिभाषा के अनुसार संरचित होता है, क्योंकि सामान्य स्थिति में एक सेट में एक से अधिक तत्व शामिल हो सकते हैं, और साथ ही सेट के सभी तत्वों के साथ एक ही समय में संचालन किया जाना चाहिए। किसी सेट में तत्वों की संख्या पहले से निर्धारित नहीं होती है, और समय के साथ यह बदल सकती है। सेट के सभी तत्व एक ही प्रकार के होने चाहिए। पहुँचसेट के अलग-अलग तत्वों के लिए नहीं. आप केवल यह पता लगा सकते हैं कि कोई तत्व किसी सेट से संबंधित है या नहीं, किसी तत्व को सेट में शामिल करें या उसे सेट से बाहर करें। सेट पर मानक संचालन भी प्रदान किए जाते हैं: संघ, प्रतिच्छेदन, घटाव, आदि।
- X1 X5 X4
- गतिशील डेटा संरचनाएँ
- समय के साथ गतिशील संरचना वाला डेटा परिवर्तन खुद संरचना, और न केवल तत्वों की संख्या, जैसे फ़ाइलें या अनुक्रम। बुनियादी गतिशील डेटा संरचनाएँ हैं:
- एक वस्तु;
- रैखिक सूची;
- पेड़;
- ग्राफ.
- एक रैखिक सूची में, प्रत्येक तत्व अपने से पहले वाले से संबंधित होता है। एक रैखिक सूची के लिए, हम जानते हैं कि कौन सा तत्व सूची की शुरुआत में है, कौन सा अंत में है, और यह भी कि कौन सा तत्व वर्तमान से पहले आता है। एक रैखिक सूची में, आप केवल पड़ोसी तत्वों के बीच निर्दिष्ट कनेक्शन का उपयोग करके वर्तमान तत्व से अगले तत्व पर जा सकते हैं।
- रेखीय सूची
- सामान्य तौर पर, तत्वों की एक श्रृंखला प्राप्त की जाती है जिसमें आप खोज सकते हैं, जिसमें आप तत्वों को सम्मिलित कर सकते हैं या उन्हें बाहर कर सकते हैं।
- कई अन्य प्रकार की गतिशील संरचनाएँ एक रैखिक सूची के आधार पर व्यवस्थित की जाती हैं। यह विशेष रूप से है: के छल्ले, कतारों, डेक्सऔर ढेर.
- वलय संरचना
- रिंग और रैखिक सूची के बीच अंतर यह है कि रिंग में सूची के अंतिम तत्व और उसके पहले तत्व के बीच संबंध होता है।
- एक रैखिक सूची और एक रिंग के लिए, संरचना के किसी भी तत्व तक पहुंच संभव है। ऐसा करने के लिए, आपको क्रमिक रूप से एक तत्व से दूसरे तत्व पर जाने की आवश्यकता है। वास्तविक दुनिया की कई स्थितियों में, ऐसी पहुंच अनुपस्थित. आप केवल पहले और आखिरी तत्वों के साथ, या उनमें से केवल एक के साथ बातचीत कर सकते हैं। ऐसी वस्तुओं को मॉडल करने के लिए कतारों, डेक और स्टैक का उपयोग किया जाता है।
- कतार संरचना
- कतार का अंत समावेशन के लिए उपलब्ध है, और शुरुआत बहिष्करण (चयन) के लिए उपलब्ध है। वह तत्व जो पहले कतार में आया और पहले सेवित है। वे कहते हैं कि कतार सेवा के अनुशासन वाली एक संरचना है फीफो (एफप्रथम मैंएन, एफप्रथम हे ut) ─ "पहले आना, पहले जाना।"
- डेक संरचना
- डेक के दोनों सिरे उपलब्ध हैं, समावेशन और नमूनाकरण दोनों के लिए। इस प्रकार, हम कह सकते हैं कि Dec ─ है दोतरफा कतार.
- ढेर संरचना
- एक स्टैक में संरचना का केवल एक ही सिरा इंटरैक्शन के लिए उपलब्ध होता है: स्टैक का शीर्ष। स्टैक पर एक नए तत्व को शामिल करना और अंतिम पहले से शामिल तत्व का चयन दोनों स्टैक के शीर्ष से होकर गुजरता है। इस प्रकार, जो आइटम सबसे बाद में आया, उसे पहले संसाधित किया जाता है। वे कहते हैं कि स्टैक रखरखाव के अनुशासन के साथ एक संरचना है जीवन (एलअस्त मैंएन, एफप्रथम हे ut) ─ "आखिरी में आने वाला, सबसे पहले जाने वाला।"
- आपके ध्यान देने के लिए धन्यवाद!
आइए एल्गोरिदम की बुनियादी संरचनाओं पर कुछ प्रतिबंध लगाएं
फ़्लोचार्ट संरचना.
हम केवल का उपयोग करके एक एल्गोरिदम बनाएंगे
एक निश्चित के तीन टुकड़े
विन्यास.
आइए उन्हें बुनियादी संरचनाएँ कहें
एल्गोरिदम.
इसमें बिना ब्लॉकों की एक श्रृंखला होती है
प्रभाव.
शाखाओं में
हाँनहीं
स्थिति शाखाकरण का एक विशेष मामला
स्थिति ब्रांचिंग का उपयोग उन मामलों में किया जाता है जहां
जब आपको इनमें से किसी एक को चुनने की आवश्यकता हो
समस्या को हल करने के दो तरीके.
चक्र
चक्र का उपयोग उन मामलों में किया जाता है जहांसमस्या को हल करने के लिए यह आवश्यक है
एक ही बात को बार-बार दोहराना
कार्रवाई. पोस्टकंडीशन के साथ लूप पूर्व शर्त के साथ लूप
पैरामीट्रिक चक्र
पैरामीट्रिक चक्र नियंत्रितपैरामीटर.
लूप पैरामीटर एक वेरिएबल है
जो चक्र में एकरस रूप से बदलता है,
और निकास मानदंड इस पर निर्भर करता है
चक्र। मैं:= में
शरीर
चक्र
मैं:= मैं + दी
नहीं
हाँ
मैं > इक मैं:=में
मैं>इक
शरीर
चक्र
मैं:=मैं+दी
जटिल एल्गोरिदम डिजाइन करना
टॉप-डाउन एल्गोरिथम डिज़ाइन विधि
विधि में निम्नलिखित चरण शामिल हैं:मूल कार्य को उपकार्यों में विभाजित किया गया है,
कुछ एल्गोरिदम द्वारा जुड़ा हुआ;
इस एल्गोरिथम को डीबग किया जा रहा है;
प्रत्येक उपकार्य को इस प्रकार माना जाता है
काम;
यह प्रक्रिया तब तक जारी रहती है
मूल कार्य पूर्णतः नहीं होगा
हल किया।
उदाहरण
समीकरण ax2 + bx + c = 0 और फ़ंक्शन दिया गया हैएफ(एक्स).
यदि किसी समीकरण में दो वास्तविक हैं
मूल x1 और x2, मानों की एक तालिका बनाएं
n से युक्त खंड पर कार्य करें
अंक. शीर्ष स्तरीय एल्गोरिदम
इनपुट ए, बी, सी
समाधान
समीकरण
नहीं
x1, x2
मिला
हाँ
एन दर्ज करें
निर्माण
टेबल
कोई निर्णय नहीं है
रुकना एल्गोरिदम जो समाधान उपसमस्या को लागू करता है
द्विघात समीकरण
d:=b2 – 4ac
नहीं
डी>0
हाँ
X1=(- b + √ d)/2/a
X2= (- b - √ d)/2/a मानों की तालिका बनाने के लिए एल्गोरिदम
कार्य
h=(x2-x1)/(n-1)
एक्स = एक्स1
मैं=1
आउटपुट एक्स, एफ(एक्स)
x=x+h
मैं = मैं +1
हाँ
नहीं
मैं>एन इस प्रकार, समस्या का समाधान
समस्या में एक ऊपरी एल्गोरिदम शामिल है
स्तर और दो उपकार्य।
उपकार्यों को जोड़ने वाला एल्गोरिदम
समाधान
समीकरण
निर्माण
तालिकाएँ f(x)