BCA / B.Tech 14 min read

Array in Hindi in DS

Array in Data Structure in Hindi | डेटा स्ट्रक्चर में ऐरे हिंदी में  :


  • ऐरे (Array) एक बुनियादी डेटा संरचना है जिसका उपयोग एक ही प्रकार के डेटा तत्वों को संग्रहीत करने के लिए किया जाता है। यह एक संगठित संग्रह (Ordered Collection) है, जहाँ सभी तत्व एक समान प्रकार (Homogeneous) के होते हैं, 
  • और उन तक इंडेक्स (Index) के माध्यम से पहुँचा जा सकता है। ऐरे में तत्वों को स्मृति में निरंतर स्थानों (Contiguous Memory Locations) पर संग्रहीत किया जाता है, जिससे किसी भी तत्व तक पहुँचना बहुत तेज़ और कुशल होता है।
  • ऐरे एक बुनियादी डेटा संरचना है जिसका उपयोग एक ही प्रकार के डेटा को संगठित करने और उस तक तेज़ी से पहुँचने के लिए किया जाता है। इसकी स्थिरता और कुशल इंडेक्सिंग इसे कई अनुप्रयोगों के लिए उपयुक्त बनाती है, लेकिन इसके कुछ सीमाएँ भी हैं, 
  • जैसे कि फिक्स्ड साइज और धीमी इनsertion/ deletion प्रक्रियाएँ। इसके बावजूद, ऐरे डेटा संरचना की नींव मानी जाती है और कंप्यूटर विज्ञान के क्षेत्र में इसका व्यापक उपयोग होता है।
  • ऐरे डेटा संरचना का सबसे सरल और सबसे व्यापक रूप से उपयोग किया जाने वाला रूप है, और इसे कई विभिन्न प्रकार के डेटा संरचनाओं की नींव माना जाता है।
ऐरे की परिभाषा (Definition of Array)

  • ऐरे एक ऐसी डेटा संरचना है जो एक ही प्रकार के तत्वों का संग्रह होती है और उन तक पहुँचने के लिए एक क्रमिक इंडेक्स का उपयोग किया जाता है। ऐरे में पहला तत्व इंडेक्स 0 पर होता है, दूसरा 1 पर, और इसी तरह से।

Features of Array in Data Structure in Hindi | ऐरे के प्रमुख विशेषताएँ:

  • समान प्रकार के तत्व: ऐरे में सभी तत्व एक ही प्रकार के होते हैं, जैसे कि सभी संख्याएँ (int) या सभी अक्षर (char)।
  • निरंतर स्मृति स्थान: ऐरे के सभी तत्व स्मृति में एक के बाद एक क्रमिक रूप से संग्रहीत होते हैं।
  • फिक्स्ड साइज (Fixed Size): ऐरे का आकार स्थिर होता है, जिसे ऐरे बनाने के समय परिभाषित किया जाता है।
  • तेज़ पहुँच (Fast Access): ऐरे में किसी भी तत्व तक इंडेक्स का उपयोग करके तेज़ी से पहुँचा जा सकता है। इंडेक्सिंग O(1) समय की जटिलता (Time Complexity) प्रदान करती है।

Types of Array in Data Structure in Hindi | ऐरे के प्रकार :

ऐरे को उनके आयाम (Dimensions) के आधार पर विभाजित किया जा सकता है:

1. एक-आयामी ऐरे (One-Dimensional Array)

  • यह सबसे सामान्य प्रकार का ऐरे है, जिसमें सभी तत्व एक पंक्ति में संग्रहीत होते हैं और प्रत्येक तत्व तक पहुँचने के लिए एक ही इंडेक्स की आवश्यकता होती है।

उदाहरण:

int arr[5] = {10, 20, 30, 40, 50};  
इसमें arr[0] = 10, arr[1] = 20, आदि। यह एक-आयामी ऐरे है जहाँ पाँच तत्व हैं और इन तक क्रमिक रूप से इंडेक्सिंग का उपयोग करके पहुँचा जा सकता है।

2. दो-आयामी ऐरे (Two-Dimensional Array)

  • दो-आयामी ऐरे को मैट्रिक्स (Matrix) भी कहा जाता है, जिसमें तत्व पंक्ति और स्तंभ (Rows and Columns) के रूप में संग्रहीत होते हैं। इसे इंडेक्स के दो सेटों का उपयोग करके पहुँचा जाता है।

उदाहरण:

int matrix[3][3] = {
    {1, 2, 3},
    {4, 5, 6},
    {7, 8, 9}
};
इसमें matrix[0][0] = 1, matrix[1][2] = 6, आदि। यह 3x3 का एक मैट्रिक्स है जिसमें 9 तत्व हैं।

3. बहु-आयामी ऐरे (Multi-Dimensional Array)

  • यह ऐरे कई आयामों में तत्वों को संग्रहीत करता है, जैसे कि तीन-आयामी ऐरे, जहाँ प्रत्येक तत्व तक तीन इंडेक्स के उपयोग से पहुँचा जा सकता है।

उदाहरण:

int arr[3][3][3];  // यह तीन-आयामी ऐरे है

Main Operations in Array in Data Structure in Hindi | ऐरे में मुख्य ऑपरेशन्स :

  • ऐरे में तत्व जोड़ना (Insertion): ऐरे में एक नया तत्व जोड़ने के लिए हमें यह देखना होता है कि ऐरे में कितनी जगह उपलब्ध है। ऐरे का आकार फिक्स्ड होता है, इसलिए अगर ऐरे भरा हुआ है, तो नया तत्व नहीं जोड़ा जा सकता।
  • ऐरे से तत्व हटाना (Deletion): ऐरे से एक तत्व हटाने के लिए, हमें उस तत्व की जगह को शिफ्ट करना होता है ताकि ऐरे लगातार क्रम में रहे। यह O(n) समय की जटिलता में किया जाता है।
  • किसी तत्व को प्राप्त करना (Access): ऐरे के किसी भी तत्व तक उसकी इंडेक्स पोजीशन के माध्यम से O(1) समय में पहुँचा जा सकता है। यह ऐरे का सबसे बड़ा लाभ है।
  • खोजना (Search): ऐरे में किसी तत्व को खोजने के लिए हमें तत्वों की सूची में क्रमिक रूप से देखना होता है, जो कि O(n) समय की जटिलता में किया जाता है। हालाँकि, अगर ऐरे पहले से क्रमबद्ध है, तो बाइनरी सर्च का उपयोग किया जा सकता है।
  • ऐरे का ट्रैवर्सल (Traversal): ऐरे का ट्रैवर्सल मतलब ऐरे के सभी तत्वों पर एक-एक करके पहुँचना। यह O(n) समय की जटिलता में किया जाता है।

Examples of Array in Data Structure in Hindi | ऐरे के उदाहरण :

1. साधारण ऐरे का उदाहरण:

#include
int main() {
    int arr[5] = {10, 20, 30, 40, 50};  // एक-आयामी ऐरे की घोषणा
    for(int i = 0; i < 5; i++) {
        printf("%d ", arr[i]);  // ऐरे के तत्वों को प्रदर्शित करना
    }
    return 0;
}

2. दो-आयामी ऐरे का उदाहरण:

#include
int main() {
    int matrix[3][3] = {
        {1, 2, 3},
        {4, 5, 6},
        {7, 8, 9}
    };  // दो-आयामी ऐरे की घोषणा

    for(int i = 0; i < 3; i++) {
        for(int j = 0; j < 3; j++) {
            printf("%d ", matrix[i][j]);  // मैट्रिक्स के तत्वों को प्रदर्शित करना
        }
        printf("\n");
    }
    return 0;
}

Advantages of Array in Data Structure in Hindi | ऐरे के लाभ :

  • तेज़ एक्सेस: ऐरे में किसी भी तत्व तक इंडेक्स का उपयोग करके तुरंत पहुँचा जा सकता है। इसकी समय जटिलता O(1) है, जो इसे बहुत कुशल बनाता है।
  • आसान कार्यान्वयन: ऐरे को आसानी से लागू किया जा सकता है और यह अन्य डेटा संरचनाओं (जैसे लिंक्ड लिस्ट, स्टैक, क्यू) के निर्माण की नींव है।
  • स्थिर आकार: ऐरे का आकार स्थिर होता है, जिससे हमें इसके मेमोरी उपयोग की जानकारी होती है और इसे बेहतर ढंग से प्रबंधित किया जा सकता है।
  • वृत्ताकार और दो-आयामी डेटा का सरल भंडारण: ऐरे में हम वृत्ताकार या मैट्रिक्स रूप में डेटा को संग्रहीत कर सकते हैं, जो कई गणितीय और भौतिक विज्ञान समस्याओं को हल करने के लिए उपयोगी होता है।

Disadvantages of Array in Data Structure in Hindi | ऐरे की हानियाँ : 

  • स्थिर आकार (Fixed Size): ऐरे का आकार पहले से निश्चित होता है, और इसे रनटाइम में बदला नहीं जा सकता। अगर ऐरे पूरा भर जाता है, तो नया तत्व जोड़ना असंभव होता है, और अगर ऐरे में बहुत अधिक खाली स्थान है, तो मेमोरी की बर्बादी होती है।
  • धीमी इनsertion और deletion: ऐरे के बीच में एक नया तत्व जोड़ने या हटाने के लिए O(n) समय लगता है, क्योंकि हमें अन्य तत्वों को शिफ्ट करना होता है। इससे बड़े ऐरे में इनsertion और deletion महँगे हो जाते हैं।
  • मेमोरी का कुशल उपयोग नहीं: ऐरे में खाली स्थान को फिर से उपयोग में लाना मुश्किल हो सकता है, जिससे मेमोरी की बर्बादी हो सकती है। इसके बजाय, लिंक्ड लिस्ट जैसी डेटा संरचनाएँ बेहतर हो सकती हैं जहाँ मेमोरी का अधिक कुशलता से उपयोग किया जा सकता है।
  • खोज की जटिलता (Search Complexity): ऐरे में खोजने के लिए O(n) समय लगता है, जब तक कि ऐरे पहले से क्रमबद्ध न हो। असंगठित ऐरे में बाइनरी सर्च लागू नहीं किया जा सकता।
Features of Array in Data Struture in Hindi | ऐरे की विशेषताएँ :

  • समान प्रकार के तत्व (Homogeneous Elements): ऐरे की सबसे प्रमुख विशेषता यह है कि इसमें सभी तत्व एक ही प्रकार के होते हैं, जैसे कि सभी तत्व int, float, char, आदि हो सकते हैं। यह ऐरे को एक समान प्रकार के डेटा को संग्रहीत करने के लिए उपयुक्त बनाता है।

उदाहरण : int arr[5] = {1, 2, 3, 4, 5};  // सभी तत्व integer प्रकार के हैं

  • क्रमिक मेमोरी आवंटन (Contiguous Memory Allocation) : ऐरे में सभी तत्व स्मृति में निरंतर (contiguous) रूप से संग्रहीत होते हैं। इसका मतलब है कि ऐरे के पहले तत्व के बाद दूसरा तत्व सीधे अगली मेमोरी लोकेशन पर आता है। इससे ऐरे में तत्वों तक पहुँचना तेज़ और कुशल होता है।

उदाहरण : अगर arr[0] की मेमोरी लोकेशन 100 है और यह एक integer ऐरे है, तो arr[1] की मेमोरी लोकेशन 104 होगी, क्योंकि integer का आकार 4 बाइट्स होता है।

  • इंडेक्स आधारित एक्सेस (Index-Based Access): ऐरे में प्रत्येक तत्व का एक्सेस एक अद्वितीय इंडेक्स द्वारा किया जाता है। ऐरे में पहला तत्व इंडेक्स 0 से शुरू होता है और अंतिम तत्व n-1 इंडेक्स पर होता है, जहाँ n ऐरे का आकार है। इंडेक्सिंग के माध्यम से हम सीधे किसी भी तत्व तक पहुँच सकते हैं।

उदाहरण :

arr[0] = 10;  // पहला तत्व
arr[2] = 30;  // तीसरा तत्व

फिक्स्ड साइज (Fixed Size):

  • ऐरे का आकार निश्चित (फिक्स्ड) होता है, और इसे ऐरे की घोषणा के समय ही परिभाषित किया जाता है। एक बार ऐरे का आकार निर्धारित हो जाने के बाद, इसे रनटाइम के दौरान बदला नहीं जा सकता।
उदाहरण :

int arr[10];  // 10 तत्वों का एक ऐरे

  • समान प्रकार की डेटा संरचना (Static Data Structure) : ऐरे को अक्सर एक स्थिर डेटा संरचना माना जाता है, क्योंकि इसका आकार और मेमोरी आवंटन पहले से ही तय होता है। इसे बाद में रनटाइम के दौरान बदलने की आवश्यकता नहीं होती।

उदाहरण :

int arr[5] = {1, 2, 3, 4, 5};  // एक स्थिर ऐरे, जिसे बाद में आकार में नहीं बदला जा सकता

  • तेज़ पहुँच (Fast Access) : ऐरे की सबसे प्रमुख विशेषता यह है कि इसमें हम किसी भी तत्व तक सीधे पहुँच सकते हैं, चाहे वह पहला तत्व हो या आखिरी। यह इंडेक्सिंग के माध्यम से संभव होता है, और ऐरे में पहुँचने की समय जटिलता O(1) होती है, जो इसे बहुत तेज़ और कुशल बनाता है।
  • समान कार्यों पर इटरेशन (Iteration over Same Operations) : ऐरे के साथ हम आसानी से लूप्स (जैसे for, while) का उपयोग करके सभी तत्वों पर एक ही प्रकार की क्रिया को लागू कर सकते हैं। यह उन मामलों में बेहद उपयोगी होता है जहाँ हमें एक ही ऑपरेशन को कई डेटा पर लागू करना होता है।

उदाहरण :

for(int i = 0; i < 5; i++) {
    printf("%d ", arr[i]);  // सभी तत्वों को प्रदर्शित करना
}

  • मेमोरी में प्रभावशीलता (Efficient Memory Utilization) : ऐरे में मेमोरी का उपयोग बहुत ही प्रभावी ढंग से किया जाता है, क्योंकि सभी तत्व एक क्रम में संग्रहीत होते हैं और उनका आकार भी पूर्व निर्धारित होता है। इसका अर्थ है कि स्मृति में कोई गैप या अंतर नहीं होता।