Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
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/