2. Arrays (1)
2. Arrays (1)
Semester: III
Course Summary
This course is aimed at preparing the students to understand
and apply the principles of data structures and algorithms,
implement standard data structures and develop
algorithms for efficient computer programs.
A broad range of abstract data types as well as algorithms
for data storage, access and manipulation used in program
development are taught.
Data representation in computer memory, features of linear
and non-linear data structures, algorithms for searching
and sorting, analysis of computational time and space
usage are covered.
Students are trained to develop applications using
appropriate data structures and algorithms.
Students implement and test computer programs in Python
language.
Course Resources
EssentialReading
Class Notes
Goodrich, M.T., Tamassia, R. and Goldwasser,
M.H., 2013. Data structures and algorithms in
Python. John Wiley & Sons Ltd.
Recommended Reading
Necaise, R.D., 2011. Data structures and
algorithms using Python. Wiley.
Websites
https://www.coursera.org/
http://nptel.ac.in/
Course Syllabus
Unit-1 (Stacks, Queues, and Deques): Stacks, Queues, Double-Ended
Queues
Unit-2 (Linked Lists): Singly Linked Lists, Circularly Linked Lists, Doubly
Linked Lists
Unit-3 (Trees): General Trees, Binary Trees, Implementing Trees, Tree
Traversal Algorithms
Unit-4 (Priority Queues): The Priority Queue Abstract Data Type,
Implementing a Priority Queue, Heaps, Sorting with a Priority Queue
Unit-5 (Maps, Hash Tables, and Skip Lists): Maps and Dictionaries,
Hash Tables, Sorted Maps, Sets
Unit-6 (Search Trees): Binary Search, Binary Search Trees, Balanced
Search Trees, AVL Trees
Unit-7 (Sorting and Selection): Why Study Sorting Algorithms, Merge
Sort, Quick Sort, Selection Sort
Evaluation of Data Structures Foundation
Evaluation of Python & Data Structures Laboratory
Prerequisite for this
course
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Arrays
Linked List
Understanding the concept
of class
Class
Attribute
Function
Object
Instance
Understanding the concept
of class (in python)