Header Ads

ad728
  • New Updates

    Linear Arrays


    Linear Arrays         

    Array एक ऐसा Data Structure होता है, जिसमें एक ही Data Type के n Data Items एक List के रूप में Store हो सकते हैं , जबकि n Array की Size को Define करता है , यदि किसी Array की Size n हो व n का मान 10 हो तो उस Array में हम केवल दस Data Items Store करके रख सकते हैं |

    Array के हर Item को उसके Index Number से Access किया जाता है | किसी Array का प्रथम Item हमेशा Index Number0 पर Store होता है और Array का अंतिम Item हमेंशा Index Number n-1 पर Store होता है | किसी Array के Index Number0 को Array का Lower Bound और Index Number n-1 को Array का Upper Bound कहते हैं | किसी Array की Length या Size को हम निम्न सुत्र द्वारा प्राप्त कर सकते हैं |

     

    SIZE =UB +1

     

    जहां

    UB = Upper Bound

    LB  = Lower Bound

     

    हम किसी भी Index Number को हमेंशा Bracket के बीच लिखते हैं | जैसे यदि हमें किसी Array के Index Number4 के Data Item को Access करना हो तो हम Array [4] लिखते हैं |

    Array भी तीन तरह के होते हैं |

    1. One – Dimensional Array

    2. Two – Dimensional Array

    3. Multi – Dimensional Array

     

    ऊपर जो प्रारूप समझाया गया है , वह One Dimensional Array का प्रारूप है | यदि किसी Array को Declare करते समय एक के बजाय दो Brackets में Array की Size को Define कर दिया जाए , तो यह एक Two Dimensional Array बन जाता है और यदि Array की Size को दो से अधिक Brackets में दे दिया जाए तो यह Multi Dimensional Array हो जाता है |

    जब Array को Declare किया जाता है , तब वह Memory में वही जाकर Store होता है , जहां उसमें Define की गई पूरी जगह उसे क्रम से प्राप्त हो जाए | जब हमें कोई Table या सारणी Memory में Store करनी होती है , तब हम Two Dimensional Array का प्रयोग करते हैं | इसमें एक Dimensional Row की व दूसरी Dimension Column की होती है और इसे हम अग्रानुसार प्रदशित कर सकते हैं | माना तीन Student के Hindi , English Science में क्रमशः निम्नानुसार मान प्राप्त हुए हैं |

    यदि हम इसे किसी Array में Store करना चाहें तो उस Array में ये मान निम्नानुसार विभन्न Memory Locations पर Store होंगे व इन्हें निम्नानुसार Index Numbers प्राप्त होंगे जिनसे इनकी पहचान होगी

    इसमें प्रथम विद्यार्थी के Hindi के अंक 50 Memory Location के Index Number 0,0 पर Store होंगे | English के अंक 0,1 Location Science के अंक 0,2 Location पर Store होंगे | इसी प्रकार दूसरे विद्यार्थी के Hindi के अंक Memory में 1,0 Index Number के Location पर , English के अंक 1,1 Location पर व Science के अंक 1,2 Location पर Store होंगे | इसे गणितीय रूप में हम निम्नानुसार लिख सकते हैं |

     

    Student [0,0] 50

    Student [0,1] 46

    Student [0,2] 65

    Student [1,0] 55

    Student [1,1] 44

    Student [1,2] 56

    Student [2,0] 45

    Student [2,1] 54

    Student [2,2] 75

     

    हम इस Table को Row Column में प्रदर्शित कर सकते हैं , लेकिन Memory में ये एक लगातार क्रम में Store होते हैं और इनकी पहचान इनके Index Number के आधार पर ही होती है | इस प्रकार यदि Index Number बदल जाता है , तो Memory Location भी बदल जाती है और Store होने वाला मान कभी भी किसी एक Memory Location पर Store नहीं होता | यदि Two Dimensional Array को Declare करना हो तो हम निम्न Format का प्रयोग करते हैं –

     

    Data_TypeArray_Name [Row Size] [Column Size]

     

    इस प्रकार उपरोक्त उदाहरण का Array निम्नानुसार Declare होगा –

     

    int Student [3] [3]

     

    तीन Student के कारण Row की संख्या तीन है व तीन विषय के कारन Column की संख्या तीन है | इनका क्रम आपस में बदला भी जा सकता है , यानी Row की जगह Column Column की जगह Row की Size भी दी जा सकती है | Two Dimensional Array में हम एक Array में Row Column की संख्या के गुणनफल के बराबर संख्या में Elements Store कर सकते हैं | Two Dimensional Array को भी इसी प्रकार से Declare किया जा सकता है और उसमें Store होने वाले Elements की संख्या उनकी Define की गई कुल Brackets की Size के गुणनफल के बराबर होती है | माना हम एक Multi Dimensional Array निम्नानुसार Declare करते है |

     

    int x[2] [2] [3];

     

    तो यह Statement Memory में कुल 2x2x3 =12 Element Store कर सकेगा |

    इस प्रकार हम Array को Use कर सकते हैं और एक Array को एक ही प्रकार के बहुत सारे Data को एक ही Variable में Store करने के लिए प्रयोग किया जा सकता है | Array के User Defined Data Type है | हम विभन्न प्रकार की सारी Arithmetical , Relational , Logical आदि क्रियाएं Array के साथ कर सकते हैं | जैसे उपर के एक उदाहरण में Students के तीन विषयों में प्राप्त अंकों को हमें जोड़ना हो और हर विद्यार्थी के कुल अंक ज्ञात करने हो , तो हमें निम्न प्रकार से उन्हें जोड़ सकते हैं |

    Student 1 के कुल अंक

     tot = student1 [0,0] + student1[0,1] + student1[0,2]

     

    इस Statement से प्रथम विद्यार्थी के अंक जो कि क्रमशः Index Number [0,0] , [0,1] , [0,2] पर स्थित है , वे जुड कर Variable tot में प्राप्त जो जाते हैं |

    ध्यान दे कि किसी भी Array में Index Number यह बताता है कि हमने जो मान किसी Array में दिया है , वह मान Memory में किसी Array की किस Location पर स्थित है | यह एक Address होता है ना कि कोई मान |

    किसी भी Array में स्थित मान को हम केवल उसके Index Number के द्वारा ही Access कर सकते हैं | Index Number एक Address होता है , जो किसी Element की मेमोरी में स्थिति बताता है | इसलिए यहां पर प्रथम विद्याथी के प्राप्तांकों को जोड़ने के लिए उनके Index Number के द्वारा उनका मान प्राप्त किया गया है ना कि सीधे ही प्राप्तांको को जोड़ दिया गया है |

    एक Array को जब हम Declare करते हैं तब वास्तव में हम एक ही बार में ढेर सारे Variables Declare कर रहे होते हैं | जैसे हम किसी Variable में पाच विद्यार्थियों के Roll Number Input करना चाहते हैं | इस काम के लिए हम साधारण तौर पर पांच Variable निम्नानुसार Declare कर सकते हैं |

     

    int roll_number0,

    int roll_number1,

    int roll_number2,

    int roll_number3,

    int roll_number4;

     

    यही काम हम एक बार में एक Array द्वारा भी कर सकते हैं , यानी

     

    int roll_number [5]

     

    यदि हम इस Array को एक दूसरे तरीके से लिखें , तो इसे निम्नानुसार भी लिख सकते हैं |

     

    roll_number [0]

    roll_number [1]

    roll_number [2]

    roll_number [3]

    roll_number [4]

    roll_number [5]

     

    यदि दोनों प्रकार से Declare किए गए Variables की तुलना करें तो हम देखते हैं कि दोनों ही तरह से Variables सामान ही Declare हुए हैं | यानी

    यहां Array वही काम कर रहा है जो हम पांच Variables Declare कर के करने वाले हैं | इस प्रकार ऐसी व्यवस्था है , जो हमें एक ही समय में एक ही प्रकार के बहुत सारे Variables Declare करने की सुविधा प्रदान करता है | यानी हम Declare तो एक ही Variable करते हैं लेकिन Index Number के कारण एक ही Variable की उतनी ही प्रतिलिपि बन जाती है जितनी हमने Array की Size दी होती है , और हर Variable के साथ स्वयं ही एक Index Number “C” Compiler लगा देता है , जो किसी भी प्रतिलिपि का Memory में Address उपलब्ध करवाता है या किसी भी Array Variable को Access करने का तरीका उपलब्ध करवाता है , जिससे हम उस Variable को Access कर सकते हैं |

     

     

    No comments

    Post Top Ad

    ad728

    Post Bottom Ad

    ad728