Types Of Data Structure in Hindi

Types Of Data Structure in Hindi – डेटा स्ट्रक्चर के प्रकार

आज के डिजिटल युग में हर छोटीबड़ी जानकारी (Data) के रूप में संग्रहीत की जाती है। लेकिन इस Data को सही तरीके से स्टोर (store), प्रोसेस (process) और एक्सेस (access) करने के लिए हमें Data Structure की आवश्यकता होती है।

Data Structure को समझने के लिए सबसे पहले यह जानना जरूरी है कि अलग-अलग प्रकार के Data को हम किस रूप में store करते हैं और उनका उपयोग कैसे करते हैं। इसी आधार पर Data Structure का वर्गीकरण किया जाता है।
Data Structure कों उनके कार्य के आधार पर अलग अलग प्रकारों मे बांटा गया है

Data Structure को मुख्य रूप से 2 प्रमुख वर्गों में बाँटा गया है।

    1. Primitive Data Structures

    1. NonPrimitive Data Structures

Types Of Data Structure in Hindi

Primitive Data Structures

ये Basic Building Blocks होते हैं जो सीधे कंप्यूटर द्वारा समझे जाते हैं। इन्हें प्रोग्रामिंग भाषाओं में बिल्टइन Data Types के रूप में पहले से डिफाइन किया जाता है।

यह कम्पूयटर मे पहले से ही डिफाइन परिभाषित होते है इन्हे मशीन मे डिफाइन करने की आवश्यकता नही होती है ।

ये बेसिक Data Types होते हैं जो किसी भी प्रोग्रामिंग भाषा में पहले से बने होते हैं। जो सीधे मशीन लेवल पर काम करते हैं और एक समय में केवल एक ही वैल्यू स्टोर कर सकते हैं।

कंप्यूटर प्रोग्रामिंग में सबसे बुनियादी प्रकार के Data होते हैं। इन्हें कंप्यूटर सीधे समझ सकता है और ये किसी अन्य Data Type से नहीं बने होते हैं। इन्हें बुनियादी Data प्रकार भी कहा जाता है।

प्रिमिटिव Data Type अलग अलग तरह की जानकारी को स्टोर करने के लिए इस्तेमाल होते हैं।

Primitive Data Structures वे बेसिक डेटा टाइप्स होते हैं जिन्हें प्रोग्रामिंग लैंग्वेज में सीधे इस्तेमाल किया जा सकता है। ये सिंगल वैल्यू स्टोर करते हैं और इनकी मेमोरी साइज़ फिक्स्ड होती है means मेमोरी मे इन्हे डाटा टाइप्स कों कितनी जगह मिलेगी वह निर्धारित रहती है ।

1. Integer (पूर्णांक)

पूरी संख्याएँ (दशमलव के बिना) यह एक numerical data type है जो whole numbers पूर्णांक संख्या (∞ से +∞ तक) जो बिना दशमलव वाली पूर्ण संख्याओं (धनात्मक, ऋणात्मक या शून्य) को store करता है। इसमें no decimal points होते हैं।

Example: 5, 3, 100, 0

Memory:

4 bytes (32bit systems)
8 bytes (64bit systems)

2. Float (दशमलव संख्या/अपूर्णांक)

दशमलव वाली संख्याएँ।

यह डेटा टाइप दशमलव बिंदु वाली संख्याओं को संग्रहीत करने के लिए उपयोग किया जाता है,
यह single precision floating point number को represent करता है जो decimal values store कर सकता है।

Memory: 4 bytes (67 decimal digits तक precision)

Example: float price = 99.99

3. Character (वर्ण)

यह डेटा टाइप single अक्षर, अंक या विशेष चिह्न (letter, digit, symbol या space)। को store करता है, यह एक single Unicode character store करता है

Memory:

C/C++: 1 byte (ASCII)
Java: 2 bytes (Unicode)

Example: char grade = ‘A’;
char ch = ‘C’;

4. Boolean (बूलियन)

यह एक सरल डेटा टाइप है जो केवल दो संभावित मानों values store करता है सत्य (True) या असत्य (False) को store करता हैं। जो logical conditions को represent करते हैं।

Memory: आमतौर पर 1 byte (implementation dependent)

Example: bool = true;

Double (डबल परिशुद्धता)

यह double precision floating point number है जो float से higher precision (1516 decimal digits) प्रदान करता है।

Memory: 8 bytes

Example: double pi = 3.1415926535;

5. String (शाब्दिक डेटा)

यह sequence of characters (textual data) को store करता है। यह character से थोड़ा अलग है character एक बार मे केवल एक ही अक्षर कों स्टोर किया जाता है पर string मे ग्रुप of char अक्षरों के समूह कों store किया जाता है ।

Memory: Variable (प्रत्येक character के लिए 14 bytes, language dependent)

Example: String name = “Rahul”;

Key Points:

    1. सभी primitive types fixed memory size का उपयोग करते हैं (string को छोड़कर)।

    1. इन्हें directly memory में store किया जा सकता है।

Example: Code (C/Java/Python):

int num = -10; // Integer

float marks = 85.55; // Float

char section = ‘B’; // Character

boolean flag = true; // Boolean

double value = 123.45998666;// Double

String text = “Welcome”; // String

Non-Primitive Data Structures

Non-Primitive Data Structure वे होते हैं जो Primitive data types को मिलाकर बनाए जाते हैं। ये अधिक जटिल डेटा को संभालने के लिए उपयोगी होते हैं।

Non-Primitive Data Structure वो Data Structure होते हैं जो एक से ज़्यादा वैल्यूज़ (Values) को एक साथ स्टोर और मैनेज करने की सुविधा देते हैं।
ये Primitive data types (जैसे int, char, float) पर आधारित होते हैं लेकिन ज्यादा organized और structured तरीके से काम करते हैं।

Non-primitive data structures = “Multiple data को एक साथ manage करने का तरीका”

Non-Primitive Data Structure वह Data Structure है जो मूलभूत डेटा प्रकारों (जैसे कि इंटीजर, कैरेक्टर, बूलियन) को जोड़कर बनाया जाता है। यह एक से अधिक मानों (values) को संग्रहित (store) करने की क्षमता रखते हैं और इनका आकार (size) चलते समय (runtime) पर बदला जा सकता है।

Non-Primitive Data Structure्स मूलभूत डेटा प्रकारों को व्यवस्थित (organize) और प्रबंधित (manage) करने का एक तरीका हैं ताकि हम जटिल डेटा (complex data) को प्रभावी तरीके से (efficiently) संभाल सकें।

इन्हें दो मुख्य भागों में बाँटा जाता है:

    • A. Linear Data Structures (रेखीय संरचना)

    • B. Non-Linear Data Structures (गैर-रेखीय संरचना)

Linear Data Structure (रैखिक डेटा संरचना)

एक Linear Data Structure वह होती है जहां डेटा (तत्व) एक क्रम (sequence) में व्यवस्थित होते हैं, जहां हर तत्व का सीधा संबंध अपने पिछले और अगले तत्व से होता है।

Linear Data Structure वह होता है जिसमें data को एक sequence (क्रम) में organize किया जाता है। इसमें सभी elements को एक के बाद एक linearly रखा जाता है।

Linear data structure वो होता है जिसमें data को एक लाइन में, क्रम से store किया जाता है। हर element का एक next और previous element होता है।

एक लीनियर Data Structure वह होती है जिसमें डेटा एक सीधी रेखा में (Sequentially) स्टोर किया जाता है।
यानी, हर element एक-दूसरे के पीछे होता है।
इसमें हम केवल एक ही path से सभी elements तक पहुँच सकते हैं।
भाग near Data Structure को दो भागों में बाँटा गया है:

    1. Static (स्टैटिक) – साइज फिक्स्ड (पहले से तय)

    1. Dynamic (डायनामिक) – साइज रनटाइम पर बदल सकता है

1. Static Data Structure (स्थैतिक)

आकार निश्चित (Fixed Size): “Static” का मतलब होता है जो स्थिर रहे, बदले नहीं। Static Data Structure वो होते हैं जिनका साइज़, यानी उनमें कितने आइटम आ सकते हैं, पहले से ही फिक्स (fix) कर दिया जाता है।

जब आप इसे बनाते हैं, तभी आपको बताना होता है कि इसमें कितने आइटम रहेंगे। बाद में आप इस साइज़ को बदल नहीं सकते।

मेमोरी का आवंटन (Memory Allocation): कंप्यूटर की मेमोरी में इसके लिए जितनी जगह चाहिए होती है, वह पहले से ही एलोकेट (allocate) कर दी जाती है। इसका मतलब है कि कंप्यूटर एक बार में उतनी जगह रिज़र्व (reserve) कर लेता है, चाहे आप उस समय सारे आइटम इस्तेमाल करें या नहीं। 

उदाहरण (Example): इसका सबसे अच्छा उदाहरण है एरे (Array)।

Array एरे

Array एक संगठित डेटा संरचना है जो एक ही प्रकार के कई डेटा तत्वों को एक निश्चित क्रम में एक साथ संग्रहित करने की सुविधा देती है।

विशेषताएँ (Features):

एक जैसे प्रकार के डेटा को एक ही कंटेनर में रखा जाता है। 

तेज़ एक्सेस के लिए हर डेटा का एक यूनिक इंडेक्स होता है, जो 0 से शुरू होता है। 

मेमोरी में सभी एलिमेंट्स लगातार स्थान (contiguous memory) पर रखे जाते हैं। 

एक बार आकार तय हो जाने पर array का आकार स्थिर रहता है

कार्य प्रणाली (Working Process): जब कोई array बनता है, तो कंप्यूटर उसकी मेमोरी में एक लगातार ब्लॉक आरक्षित करता है। हर एलिमेंट को उसकी स्थिति के आधार पर इंडेक्स दिया जाता है। जब किसी विशेष डेटा की जरूरत होती है, तो कंप्यूटर इंडेक्स के ज़रिए सीधे उस स्थान पर पहुँचता है, जिससे डेटा एक्सेस बहुत तेज़ होता है।

Array एरे एक तरह की लिस्ट होती है जिसमें आप एक ही तरह की चीजें (जैसे सिर्फ नंबर या सिर्फ नाम) एक के बाद एक रखते हैं। अगर आपने एक एरे बनाया जिसमें 10 नंबर रखने हैं, तो वह हमेशा 10 नंबरों जितनी ही जगह लेगा। आप बाद में उसकी साइज़ को बदल नहीं सकते।

  •  

Dynamic Data Structure (गतिशील)

आकार लचीला (Flexible Size): “गतिशील” का मतलब होता है जो बदल सके। तो, गतिशील Data Structure वो होते हैं जिनका साइज़ (size) आप अपनी ज़रूरत के हिसाब से बदल सकते हैं। अगर आपको ज़्यादा आइटम रखने हैं तो आप साइज़ बढ़ा सकते हैं, और अगर कम रखने हैं तो घटा सकते हैं।

मेमोरी का आवंटन (Memory Allocation): इनके लिए मेमोरी की जगह रन-टाइम (run-time) पर, यानी जब प्रोग्राम चल रहा होता है, तब एलोकेट (allocate) होती है। जब आपको नए आइटम की ज़रूरत होती है, तभी वे नई जगह लेते हैं।

साइज़ बदल सकता है, ज़रूरत के हिसाब से जगह मिलती है, एक्सेस थोड़ा स्लो, लेकिन आइटम्स जोड़ना/हटाना आसान।इनका साइज रनटाइम (Runtime) पर बदल सकता है।

उदाहरण (Example): कुछ आम गतिशील Data Structure हैं लिंक्ड लिस्ट (Linked List), स्टैक (Stack), और क्यू (Queue) (हालाँकि स्टैक और क्यू को स्थैतिक रूप से भी लागू किया जा सकता है)।

    • मेमोरी नॉन-कॉन्टिग्यूस (Non-contiguous – अलग-अलग जगह) हो सकती है। Dynamic Linear Data Structures (डायनामिक रैखिक डेटा संरचनाएँ)

    • Linked List (लिंक्ड लिस्ट)
    • Stack (स्टैक)
    • Queue (क्यू)

  1. Linked List (लिंक्ड लिस्ट)

लिंक्ड लिस्ट एक ऐसी डेटा संरचना है जिसमें डेटा को नोड्स (nodes) के रूप में जोड़ा जाता है। हर नोड में दो चीजें होती हैं: एक डेटा आइटम अगले नोड का पता (link/pointer) हर नोड अगले नोड से जुड़ा रहता है, जिससे एक चेन जैसी संरचना बनती है — इसी को लिंक्ड लिस्ट कहते हैं।

मुख्य विशेषताएँ (Key Features):

डायनामिक मेमोरी: रनटाइम पर जितनी ज़रूरत हो, उतने नोड्स बनाए जा सकते हैं। 

लचीलापन: बीच में नोड जोड़ना या हटाना आसान है, किसी और डेटा को हटाना नहीं पड़ता। 

नॉन-कॉन्टिग्युअस स्टोरेज: नोड्स मेमोरी में इकट्ठे न होकर बिखरे होते हैं, पर आपस में जुड़े होते हैं। 

NULL से अंत: आखिरी नोड के पास अगले नोड का कोई पता नहीं होता, वह NULL को पॉइंट करता है।

कैसे काम करती है (How It Works):

कल्पना करें कि आपके पास किताबों की एक श्रृंखला है, और हर किताब में अगली किताब का नाम लिखा है। आप पहली किताब से शुरू करते हैं, और हर बार अगले नाम पर जाते जाते आखिरी किताब तक पहुँचते हैं। यही लिंक्ड लिस्ट का सिद्धांत है।

Non-Linear Data Structure (अरैखिक डेटा संरचना)

एक Non-Linear Data Structure वह होती है जहां डेटा (तत्व) क्रम (sequence) में नहीं बल्कि हायरार्किकल (Hierarchical) या नेटवर्क (Network) तरीके से व्यवस्थित होते हैं।

Non-Linear Data Structure वह होता है जिसमें data को random तरीके से, मतलब hierarchical या नेटवर्क structure में organize किया जाता है। इसमें एक element कई दूसरे elements से जुड़ा हो सकता है।

Non-linear data structure वो होता है जिसमें data को सीधे लाइन में नहीं, बल्कि branch की तरह या network की तरह रखा जाता है। इसमें एक node कई nodes से जुड़ी हो सकती है।

Types of Non-Linear Data Structures

Non-Linear Data Structure के मुख्य प्रकार हैं:

1. Tree

Tree एक Hierarchy Data Structure है जिसमें एलिमेंट्स को नोड्स के रूप में दर्शाया जाता है। इसका पहला नोड Root Node कहलाता है, और अन्य नोड्स उसके चाइल्ड होते हैं।

Tree की विशेषताएँ:

    • हर नोड का केवल एक पैरेंट हो सकता है।

    • एक रूट नोड होता है।

    • बिना साइकल के हायरार्की स्ट्रक्चर।

2. Graph

Graph एक नेटवर्क जैसा स्ट्रक्चर होता है जिसमें नोड्स और एज होते हैं। इसमें एलिमेंट्स को वर्टेक्स (Vertex) और उनके कनेक्शन को एज (Edge) कहा जाता है।

Graph की विशेषताएँ:

    • साइकल मौजूद हो सकते हैं।

    • एक नोड के एक से अधिक कनेक्शन होता है।

    • डायरेक्टेड या अनडायरेक्टेड होता है।

Data Structure Notes

What is Data Dtructure in Hindi – डेटा स्ट्रक्चर क्या है?

Data Structure in Hindi – डेटा स्ट्रक्चर क्या है?

Leave a Comment