डाटा स्ट्रक्चर

Jul 4, 2024

डाटा स्ट्रक्चर

क्लास शुरू

  • सभी छात्रों का अभिवादन
  • यहाँ डाटा स्ट्रक्चर की पहली क्लास है
  • सभी छात्रों ने कुछ न कुछ लैंग्वेज पढ़ी है इसलिए बेसिक डाटा टाइप्स पता होंगे

डाटा स्ट्रक्चर से शुरुआत

  • डाटा टाइप्स को दो भागों में बांटा जाता है: प्रिमिटिव और नॉन-प्रिमिटिव
    • प्रिमिटिव: इंटीजर, फ्लोट, डबल, आदि (सिंगल वैल्यू कंटेनिंग)
    • नॉन-प्रिमिटिव: एरे, लिंक्ड लिस्ट, स्टैक, क्यू, ग्राफ आदि

डाटा स्ट्रक्चर की जरूरत

  • एक समय पर एक से ज्यादा वैल्यू स्टोर करने की जरूरत होती है
  • कंटेनर्स बनाने से समस्या का हल होता है जिसे डाटा स्ट्रक्चर कहा जाता है
  • डेटा स्ट्रक्चर का उद्देश्य: डेटा स्टोरेज और ऑर्गनाइजेशन की एफिशिएंसी

डाटा स्ट्रक्चर के प्रकार

  • प्रिमिटिव डेटा स्ट्रक्चर: इंटीजर, कैरेक्टर, फ्लोट, डबल, पॉइंटर
  • नॉन-प्रिमिटिव (एब्स्ट्रैक्ट):
    • लाइनियर: एरे, लिंक्ड लिस्ट, स्टैक, क्यू, हैश
    • नॉन-लाइनियर: ट्री, ग्राफ, हीप

डाटा स्ट्रक्चर पर ऑपरेशंस

  • एक्सेसिंग डेटा
  • सर्चिंग डेटा
  • सॉर्टिंग डेटा
  • इंसर्शन और डिलीशन डेटा
  • अपडेटिंग डेटा

एडवांटेजेस ऑफ डेटा स्ट्रक्चर

  • एफिशिएंसी: कार्य कुशलता
  • रीयूज़ेबिलिटी: कोड या डेटा स्ट्रक्चर को पुन: उपयोग करना
  • एब्स्ट्रेक्शन: जटिलता को छुपाकर डेटा को सरल बनाना

डेटा स्ट्रक्चर के प्रकार

  • लाइनियर डाटा स्ट्रक्चर:
    • पहला प्रकार: एरे
    • लाइनियर और होमोजीनियस डेटा टाइप्स (समान प्रकार के डेटा)

एरे (Array)

  • लाइनियर डेटा स्ट्रक्चर और होमोजीनियस डेटा स्ट्रक्चर्स
  • डिक्लेरेशन: int array[5];
  • इनिशलाइजेशन:
    • कंपाइल टाइम: int array[5] = {1, 2, 3, 4, 5};
    • रन टाइम: यूज़र से वैल्यू लेना
  • नोट: एरे का इंडेक्स 0 से शुरू होता है
  • साइज: एक बार क्रिएट होने के बाद बदल नहीं सकता

2D एरे

  • एक से ज्यादा सब्सक्रिप्ट वाले एरे: int array[3][4];
  • इनिशलाइजेशन:
    • कंपाइल टाइम: int array[3][4] = {{1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12}};
    • रन टाइम: नेस्टेड लूप चलाना पड़ेगा
  • एक्सेसिंग: इंडेक्स नंबर से आसान
  • सर्च प्रोसेस: लीनियर और बाइनरी सर्च
  • डिसएडवांटेजेस: फिक्स्ड साइज, होमोजीनियस डेटा, कंटी जियस अलोकेशन, इंसर्शन और डिलीशन मुश्किल

एड्रेस कैलकुलेशन

  • 1D एरे: बेस एड्रेस + (इंडेक्स * साइज)
  • 2D एरे (रो मेजर): बेर ए+ (आई * n + j) * साईज़
  • 2D एरे (कॉलम मेजर): बेस एड्रेस + (आई + ज * m) * साइज

समापन

  • अगले सेशन में लिंकलिस्ट स्टार्ट होगी

  • सवालों का सेशन होगा और PDF प्रोवाइड की जाएगी