Data Structures with Python

Why Should one study Data Strcture and Algorithms in this Modern Computer era? Does program efficieny matters with the availability of plenty of storage and compute power?

More Powerful Computers encourages us to attempt more complex problems. Yes, there are plenty of complex problems exists to be solved. They can't be solved even using modern super computers!

Lecture Notes

Topics inside a [ ] are for vehemently keen learners

1. Introduction to Python [Ternary Operators, nested containers]

2. List Comprehension and Function Definition [ Function scope, function decorators, generator and Iterators, lambda functions, callback/callafter functions]

3. Operating with Files [ HDF5, Pickle, JSON]

4.Modules and classes [ Multiple Inheritance, MRO, Polymorphism, decorators]

- More on Magic Methods and Inheritance

5. Arrays

6. Singly Linked List

7. Forward Linked List

8. Stack and Queue using Linked List

9. Graph Structures (PDF)

10. Spanning Tree and Topological Sort (PDF)


Setting Up Virtual Environment

Click Here

External Links

To learn Python:

  1. https://www.learnpython.org/

2. http://www.pythontutor.com/visualize.html#mode=edit (For visualization)

3. https://data-flair.training/blogs/python-tutorials-home/ [ Quite Detailed]

4. https://docs.python.org/3/reference/index.html [ Complete Reference]

5. http://book.pythontips.com/en/latest/ (Python Tips and Tricks)

To Learn Data Structures:

Lab Rubrics : Click Here to Download

Feedback

In view of improving the teaching-learning process and to make an effective course correction, I would like to hear constructive feedback from all of you . You could enter your thoughts uninhibitedly but with clarity. Here is a feedback link that will remain open forever.

Click Here to Enter

You can enter your feedback/difficulties/suggestions at any point in time. Of course, you can safely keep yourself anonymous if you wish .

DSPY - Portion to Revise