Premium Features

Previous Buy now to get complete version Next
  • Home
uCertify Logo
  • login
  • Signup
    • Help & Support
    • Accessibility
    • Testimonials
  • Hello GuestLogin or Signup
  • Feedback & Support
    • Support
    • Keyboard Shortcuts
    • Send Feedback
Scroll to top button

Data Structures and Algorithms in Python

(DS-Algo) / ISBN: 978-1-64459-105-5
This course includes
Lessons
TestPrep
Lab
Mentoring (Add-on)
DS-Algo : Data Structures and Algorithms in Python
Try this course Pre-Assessment and first two Lessons free No credit card required
Are you an instructor? Teach using uCertify products
Request a free evaluation copy

Data Structures and Algorithms in Python

Use the Data Structures and Algorithms in Python course and lab to master all the concepts associated with Data Structures algorithms. The lab is cloud-based, device-enabled, and can easily be integrated with an LMS. With this course, you will learn common data structures and algorithms in Python and gain skills on topics like object-oriented programming, algorithm analysis, graph algorithms, array-based sequences, memory management, text processing, linked lists, and recursions.
Here's what you will get

Lessons
  • 17+ Lessons
  • 149+ Quizzes
  • 89+ Flashcards
  • 89+ Glossary of terms
TestPrep
  • 75+ Pre Assessment Questions
  • 75+ Post Assessment Questions
Lab
  • 35+ Performance lab
Here's what you will learn
Download Course Outline
Lesson 1: Python Primer
  • Python Overview
  • Objects in Python
  • Expressions, Operators, and Precedence
  • Control Flow
  • Functions
  • Simple Input and Output
  • Exception Handling
  • Iterators and Generators
  • Additional Python Conveniences
  • Scopes and Namespaces
  • Modules and the Import Statement
  • Exercises
Lesson 2: Object-Oriented Programming
  • Goals, Principles, and Patterns
  • Software Development
  • Class Definitions
  • Inheritance
  • Namespaces and Object-Orientation
  • Shallow and Deep Copying
  • Exercises
Lesson 3: Algorithm Analysis
  • Experimental Studies
  • The Seven Functions Used in This Course
  • Asymptotic Analysis
  • Simple Justification Techniques
  • Exercises
Lesson 4: Recursion
  • Illustrative Examples
  • Analyzing Recursive Algorithms
  • Recursion Run Amok
  • Further Examples of Recursion
  • Designing Recursive Algorithms
  • Eliminating Tail Recursion
  • Exercises
Lesson 5: Array-Based Sequences
  • Python's Sequence Types
  • Low-Level Arrays
  • Dynamic Arrays and Amortization
  • Efficiency of Python's Sequence Types
  • Using Array-Based Sequences
  • Multidimensional Data Sets
  • Exercises
Lesson 6: Stacks, Queues, and Deques
  • Stacks
  • Queues
  • Double-Ended Queues
  • Exercises
Lesson 7: Linked Lists
  • Singly Linked Lists
  • Circularly Linked Lists
  • Doubly Linked Lists
  • The Positional List ADT
  • Sorting a Positional List
  • Case Study: Maintaining Access Frequencies
  • Link-Based vs. Array-Based Sequences
  • Exercises
Lesson 8: Trees
  • General Trees
  • Binary Trees
  • Implementing Trees
  • Tree Traversal Algorithms
  • Case Study: An Expression Tree
  • Exercises
Lesson 9: Priority Queues
  • The Priority Queue Abstract Data Type
  • Implementing a Priority Queue
  • Heaps
  • Sorting with a Priority Queue
  • Adaptable Priority Queues
  • Exercises
Lesson 10: Maps, Hash Tables, and Skip Lists
  • Maps and Dictionaries
  • Hash Tables
  • Sorted Maps
  • Skip Lists
  • Sets, Multisets, and Multimaps
  • Exercises
Lesson 11: Search Trees
  • Binary Search Trees
  • Balanced Search Trees
  • AVL Trees
  • Splay Trees
  • (2,4) Trees
  • Red-Black Trees
  • Exercises
Lesson 12: Sorting and Selection
  • Why Study Sorting Algorithms?
  • Merge-Sort
  • Quick-Sort
  • Studying Sorting through an Algorithmic Lens
  • Comparing Sorting Algorithms
  • Python's Built-In Sorting Functions
  • Selection
  • Exercises
Lesson 13: Text Processing
  • Abundance of Digitized Text
  • Pattern-Matching Algorithms
  • Dynamic Programming
  • Text Compression and the Greedy Method
  • Tries
  • Exercises
Lesson 14: Graph Algorithms
  • Graphs
  • Data Structures for Graphs
  • Graph Traversals
  • Transitive Closure
  • Directed Acyclic Graphs
  • Shortest Paths
  • Minimum Spanning Trees
  • Exercises
Lesson 15: Memory Management and B-Trees
  • Memory Management
  • Memory Hierarchies and Caching
  • External Searching and B-Trees
  • External-Memory Sorting
  • Exercises
Appendix A: Character Strings in Python
Appendix B: Useful Mathematical Facts

Hands on Activities (Performance Labs)

Python Primer

  • Using the Bitwise Operator
  • Using the Equality Operator and the list Class
  • Using Arithmetic Operators
  • Performing Bitwise Operations
  • Using the Comparison Operator
  • Using the if-elif-else Statement - Part 1
  • Using the if-elif-else Statement - Part 2
  • Using the if-else Statement
  • Determining the Armstrong Number
  • Rectifying Errors
  • Finding LCM of Two Numbers
  • Creating a Function with its Default Value
  • Handling Exception
  • Using the dir Function
  • Using the math Module

Object-Oriented Programming

  • Understanding the init Method
  • Understanding Numeric Progressions

Recursion

  • Calculating the Product of Two Positive Integers
  • Finding the Minimum Element

Array-Based Sequences

  • Using the getsizeof Function
  • Implementing a Dynamic Array
  • Adding Elements to a List
  • Using the extend Method
  • Removing Elements from a List
  • Constructing the Caesar Cipher Algorithm

Stacks, Queues, and Deques

  • Using Stack Abstract Data Type Method

Linked Lists

  • Implementing a Stack
  • Implementing a Queue
  • Implementing a Queue with a Circular Linked List
  • Implementing a Deque with a Doubly Linked List

Maps, Hash Tables, and Skip Lists

  • Adding Elements to a Set
  • Performing Set Operations

Sorting and Selection

  • Using a Sorting Function
  • Using the len() Built-In Function

Text Processing

  • Performing Pattern Matching
×
uc logo for app downloadDownload our uCertify App [lms_setting_placeholder: This filed is used to set the LMS settings.

Share with your friends and colleagues

We use cookies to enhance your experience. By continuing to visit this site you agree to our use of cookies. More information
Accept