Data Structures-I Linear Lists · 2019-07-20 · Data Structure संजीव...
Transcript of Data Structures-I Linear Lists · 2019-07-20 · Data Structure संजीव...
-
Data Structures-I Linear Lists
सीबीएसई पाठ्यक्रम पर आधाररत कक्षा -12
द्वारा: संजीव भदौरिया स्नातकोत्ति शिक्षक (संगणक शवज्ञान ) के० शव० बािाबंकी (लखनऊ संभाग)
संजीव भदौरिया, के० वव० बािाबंकी
-
Data Structure
• एक data structure विविन्न data types के data का एक
named group होता ह ैजोकक एक विशेष प्रकार से store
रहता ह ैऔर एक single यूवनट की तरह काम करता ह ै|
“ A data structure is a named group of data of
different data types which is stored in a specific
way and can be processed as a single unit. “
• एक data structure में well-defined operations,
behaviors और properties होते हैं |
• Data को अलग अलग तरीकों से summarize करके नई
information को बनाया जा सकता ह ै|
संजीव भदौरिया, के० वव० बािाबंकी
-
Data Structure • एक data structure विविन्न data types के data का एक
named group होता ह ैजोकक एक विशेष प्रकार से store रहता ह ैऔर एक single यूवनट की तरह काम करता ह ै|
“ A data structure is a named group of data of different data types which is stored in a specific way and can be processed as a single unit. “
• एक data structure में well-defined operations, behaviors और properties होत ेहैं |
• Data को अलग अलग तरीकों से summarize करके नई information को बनाया जा सकता ह ै|
• ककसी िी data का प्रदशशन हम वनम्न रूपों में कर सकते ह ै– – Raw data
– Data item
– Data structures संजीव भदौरिया, के० वव० बािाबंकी
-
Data Type v/s Data Structure • एक data type कुछ values का set होता ह ैवजन पर हम वनवित
operations perform कर सकत े हैं | जैस े आप ककसी integer में
दशमलि (.) नहीं लगा सकत,े string को string से multiply मावह
कर सकते |
• जबकक एक data structure ककसी िी data को store करन े का,
उनको access करन ेका, manipulate करन ेका ढंग प्रदान करता ह|ै
• ककसी data structure में store ककय ेगए data का कम करन ेका
अपना अलग तरीका होता ह ै | जैसे- एक stack में सिी insertion
और deletion एक ही छोर पर होते हैं |
• Python के अपने एक collection data टाइप में से एक ह ै list |
लेककन जब हम list को एक data structure की तरह प्रयोग करत ेहैं
तो इसका व्यिहार (behaviour) अलग हो जाता ह ै
संजीव भदौरिया, के० वव० बािाबंकी
-
Data Structure
संजीव भदौरिया, के० वव० बािाबंकी
• Simple data structure
– Array or linear List
• Compound data structure
– Linear
• Stack
• Queue
• Linked list
– Non-linear
• Tree
Python के built-in linear data structure ह ै – Lists, Tuples,
Dictionaries, Sets
-
Linear List Arrays
संजीव भदौरिया, के० वव० बािाबंकी
• यहााँ linear list स ेतात्पयश एक ऐसी named list से
ह ैवजसमे एक ही प्रकार के data elements की list
• इन elements को एक index नंबर के द्वारा व्यक्त
ककया जा सकता ह ै– जो कक 0,1,2,…हो सकते हैं |
• Array 1D, 2D अथिा 3D में हो सकते हैं |
• पाइथन में array को implement करने के वलए या
तो हम List data type का प्रयोग करते हैं अथिा
numpy arrays का |
-
Stacks
संजीव भदौरिया, के० वव० बािाबंकी
• इसे LIFO structure (Last in First Out) िी कहत ेहैं क्योंकक
इसमें सबसे बाद में input की जाने िाली value सबसे पहले
access हो जाती ह ै|
• इसके operation करने का अपना अलग ढंग होता ह ै
• इसमें insertion और deletion एक ही छोर पर होता ह ैवजसे top
कहते हैं |
-
Queues
संजीव भदौरिया, के० वव० बािाबंकी
• इसे FIFO structure (First In First Out) िी कहत ेहैं क्योंकक
इसमें सबसे पहले input की जाने िाली value सबसे पहले
access हो जाती ह ै|
• इसके operation करने का अपना अलग ढंग होता ह ै
• इसमें insertion rear छोर पर और deletion front छोर पर
होता ह ै|
-
Linked List
संजीव भदौरिया, के० वव० बािाबंकी
• यह एक स्पेशल list होती ह ै वजसमे elements एक दसूरे से
nodes के रूप में जुड़ ेरहते हैं |
• प्रत्येक node में दो या अवधक वहस्से होते हैं वजसम ेसे कम से कम
एक वहस्से में अगल ेnode का address रखन ेकी क्षमता होती ह ै|
• इसमें insertion और deletion ककसी विजगाह ककया जा सकता ह ै
• दो तरह को होती ह ैsingly और doubly.
-
Trees
संजीव भदौरिया, के० वव० बािाबंकी
• यह एक multilevel data structure होता ह ै वजसमे nodes
आपस में hierarchical ररलेशनवशप में जुड़ ेरहते हैं -
• इसमें हर अंवतम node को जो की ककसी और node से नहीं जुड़ा ह ै
उस ेleave कहत ेहैं |
• सबसे ऊपर िाले node को root कहते हैं |
-
Data Structure पर होन ेिाले operation
संजीव भदौरिया, के० वव० बािाबंकी
• Insertion
• Deletion
• Searching
• Traversal
• Sorting
• Merging
-
Linear List
संजीव भदौरिया, के० वव० बािाबंकी
• एक लनार data structure िह होता ह ैवजसके elements ककसी
sequence से बन ेहोते हैं |
• एक ही प्रकार के elements के साथ, एक ही क्रम में मेमोरी में
store हों तो इसे array कहत ेहैं |
• ये सबसे साधारण data structure होते हैं |
-
Linear List मे linear search
संजीव भदौरिया, के० वव० बािाबंकी
-
Linear List मे Binary Search
संजीव भदौरिया, के० वव० बािाबंकी
-
Insertion in a Linear List (Traditional)
संजीव भदौरिया, के० वव० बािाबंकी
-
Insertion Using bisect module
संजीव भदौरिया, के० वव० बािाबंकी
-
Deletion from sorted Linear List
संजीव भदौरिया, के० वव० बािाबंकी
-
List comprehension
संजीव भदौरिया, के० वव० बािाबंकी
• ककसी list को बनान ेके वलए हम कई तरीके अपनाते हैं
• पहला तरीका
• दसूरा तरीका
• तीसरा तरीका जो नया ह ै - इसे list comprehension कहते हैं
-
List comprehension
संजीव भदौरिया, के० वव० बािाबंकी
num5 so multiplied by 2
List comprehension के लाि
• Code reduction
• Faster code processing
-
Nested/2 D Lists
संजीव भदौरिया, के० वव० बािाबंकी
• एक list में एक स े ज्यादा list element हों तो य े nested list
कहलाती ह ै|
• एक 2D list ऐसी list होती ह ै वजसम ेसमस्त elements एक ही
आकर की list होती हैं |
• इसे आप 2D list की
िााँती प्रयोग कर सकत ेहैं |
-
Nested/2 D Lists बनाना
संजीव भदौरिया, के० वव० बािाबंकी
इसके वलए हम nested loop का प्रयोग कर सकते हैं -
-
Nested/2 D Lists को traverse करना
संजीव भदौरिया, के० वव० बािाबंकी
इसके वलए हम nested loop का प्रयोग कर सकते हैं -
-
Accessing 2D List Elements
संजीव भदौरिया, के० वव० बािाबंकी
Slicing 2D List
-
धन्यिाद और अवधक पाठ्य-सामग्री हतेु वनम्न ललक पर वक्लक करें -
संजीव भदौरिया, के० वव० बािाबंकी
www.pythontrends.wordpress.com
http://www.pythontrends.wordpress.com/