Premium Features

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

Essential Algorithms: A Practical Approach to Computer Algorithms Using Python and C#

(ESS-ALGO.AE1) / ISBN: 978-1-64459-270-0
This course includes
Lessons
TestPrep
Lab
Mentoring (Add-on)
ESS-ALGO.AE1 : Essential Algorithms: A Practical Approach to Computer Algorithms Using Python and C#
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

Essential Algorithms: A Practical Approach to Computer Algorithms Using Python and C#

Enroll yourself in the Essential Algorithms: A Practical Approach to Computer Algorithms Using Python and C# course and lab to learn algorithms techniques. The course and lab provide expertise over the concepts such as algorithms, linked lists, arrays, stacks and queues, sorting, searching, hash tables, recursion, trees, cryptography, complexity theory, interview puzzles, and more.
Here's what you will get

Lessons
  • 21+ Lessons
  • 168+ Quizzes
  • 434+ Flashcards
  • 436+ Glossary of terms
TestPrep
  • 60+ Pre Assessment Questions
  • 57+ Post Assessment Questions
Lab
  • 42+ Performance lab
Here's what you will learn
Download Course Outline
Lesson 1: Introduction
  • Why You Should Study Algorithms
  • Algorithm Selection
  • Who This Course Is For
  • Getting the Most Out of This Course
  • How This Course Is Structured
  • What You Need to Use This Course
  • Conventions
Lesson 2: Algorithm Basics
  • Approach
  • Algorithms and Data Structures
  • Pseudocode
  • Algorithm Features
  • Practical Considerations
  • Summary
  • Exercises
Lesson 3: Numerical Algorithms
  • Randomizing Data
  • Finding Greatest Common Divisors
  • Performing Exponentiation
  • Working with Prime Numbers
  • Performing Numerical Integration
  • Finding Zeros
  • Gaussian Elimination
  • Least Squares Fits
  • Summary
  • Exercises
Lesson 4: Linked Lists
  • Basic Concepts
  • Singly Linked Lists
  • Doubly Linked Lists
  • Sorted Linked Lists
  • Self-Organizing Linked Lists
  • Linked-List Algorithms
  • Multithreaded Linked Lists
  • Linked Lists with Loops
  • Summary
  • Exercises
Lesson 5: Arrays
  • Basic Concepts
  • One-Dimensional Arrays
  • Nonzero Lower Bounds
  • Triangular Arrays
  • Sparse Arrays
  • Matrices
  • Summary
  • Exercises
Lesson 6: Stacks and Queues
  • Stacks
  • Queues
  • Binomial Heaps
  • Summary
  • Exercises
Lesson 7: Sorting
  • O(N2) Algorithms
  • O(N log N) Algorithms
  • Sub O(N log N) Algorithms
  • Summary
  • Exercises
Lesson 8: Searching
  • Linear Search
  • Binary Search
  • Interpolation Search
  • Majority Voting
  • Summary
  • Exercises
Lesson 9: Hash Tables
  • Hash Table Fundamentals
  • Chaining
  • Open Addressing
  • Summary
  • Exercises
Lesson 10: Recursion
  • Basic Algorithms
  • Factorial
  • Fibonacci Numbers
  • Rod-Cutting
  • Tower of Hanoi
  • Graphical Algorithms
  • Koch Curves
  • Hilbert Curve
  • Sierpiński Curve
  • Gaskets
  • The Skyline Problem
  • Backtracking Algorithms
  • Eight Queens Problem
  • Knight's Tour
  • Selections and Permutations
  • Selections with Loops
  • Selections with Duplicates
  • Selections Without Duplicates
  • Permutations with Duplicates
  • Permutations Without Duplicates
  • Round-Robin Scheduling
  • Recursion Removal
  • Tail Recursion Removal
  • Dynamic Programming
  • Bottom-Up Programming
  • General Recursion Removal
  • Summary
  • Exercises
Lesson 11: Trees
  • Tree Terminology
  • Binary Tree Properties
  • Tree Representations
  • Tree Traversal
  • Sorted Trees
  • Lowest Common Ancestors
  • Threaded Trees
  • Specialized Tree Algorithms
  • Interval Trees
  • Summary
  • Exercises
Lesson 12: Balanced Trees
  • AVL Trees
  • 2-3 Trees
  • B-Trees
  • Balanced Tree Variations
  • Summary
  • Exercises
Lesson 13: Decision Trees
  • Searching Game Trees
  • Searching General Decision Trees
  • Swarm Intelligence
  • Summary
  • Exercises
Lesson 14: Basic Network Algorithms
  • Network Terminology
  • Network Representations
  • Traversals
  • Strongly Connected Components
  • Finding Paths
  • Transitivity
  • Shortest Path Modifications
  • Summary
  • Exercises
Lesson 15: More Network Algorithms
  • Topological Sorting
  • Cycle Detection
  • Map Coloring
  • Maximal Flow
  • Network Cloning
  • Cliques
  • Community Detection
  • Eulerian Paths and Cycles
  • Summary
  • Exercises
Lesson 16: String Algorithms
  • Matching Parentheses
  • Pattern Matching
  • String Searching
  • Calculating Edit Distance
  • Phonetic Algorithms
  • Summary
  • Exercises
Lesson 17: Cryptography
  • Terminology
  • Transposition Ciphers
  • Substitution Ciphers
  • Block Ciphers
  • Public-Key Encryption and RSA
  • Other Uses for Cryptography
  • Summary
  • Exercises
Lesson 18: Complexity Theory
  • Notation
  • Complexity Classes
  • Reductions
  • 3SAT
  • Bipartite Matching
  • NP-Hardness
  • Detection, Reporting, and Optimization Problems
  • Detection ≤p Reporting
  • Reporting ≤p Optimization
  • Reporting ≤p Detection
  • Optimization ≤p Reporting
  • Approximate Optimization
  • NP-Complete Problems
  • Summary
  • Exercises
Lesson 19: Distributed Algorithms
  • Types of Parallelism
  • Distributed Algorithms
  • Summary
  • Exercises
Lesson 20: Interview Puzzles
  • Asking Interview Puzzle Questions
  • Answering Interview Puzzle Questions
  • Summary
  • Exercises
Appendix A: Summary of Algorithmic Concepts
  • Lesson 1: Algorithm Basics
  • Lesson 2: Numeric Algorithms
  • Lesson 3: Linked Lists
  • Lesson 4: Arrays
  • Lesson 5: Stacks and Queues
  • Lesson 6: Sorting
  • Lesson 7: Searching
  • Lesson 8: Hash Tables
  • Lesson 9: Recursion
  • Lesson 10: Trees
  • Lesson 11: Balanced Trees
  • Lesson 12: Decision Trees
  • Lesson 13: Basic Network Algorithms
  • Lesson 14: More Network Algorithms
  • Lesson 15: String Algorithms
  • Lesson 16: Cryptography
  • Lesson 17: Complexity Theory
  • Lesson 18: Distributed Algorithms
  • Lesson 19: Interview Puzzles

Hands on Activities (Performance Labs)

Algorithm Basics

  • Discussing about Algorithms, Numerical Algorithms, and Arrays
  • Learning Common Run Time Functions
  • Understating about Big O Notation

Numerical Algorithms

  • Creating Pseudorandom Numbers
  • Making Random Walks
  • Calculating Greatest Common Divisors
  • Testing of Primality
  • Performing Numerical Integration
  • Using Back Substitution

Linked Lists

  • Finding Cells

Arrays

  • Discussing about Arrays, Stacks and Queues, and Sorting
  • Finding Median
  • Finding Average
  • Learning about Array Types
  • Adding Matrices

Stacks and Queues

  • Reversing An Array
  • Understanding Stacks
  • Understanding Queues
  • Merging Trees
  • Understanding Binomial Trees

Sorting

  • Understanding the Heap Sort Algorithm
  • Understanding Sorting Algorithm
  • Summarizing the Algorithms

Searching

  • Understanding the Linear Search Algorithm
  • Understanding Binary Search
  • Understanding Interpolation Search
  • Discussing about Searching, Hash Tables, and Recursion

Hash Tables

  • Understanding Open Addressing

Recursion

  • Understanding the Factorial
  • Learning about the Koch Curves
  • Understanding Eight Queens Problem

Trees

  • Understanding about Balanced and Decision Trees
  • Understanding Tree Terminology
  • Calculating Number of Nodes
  • Learning About Tree Traversal

Balanced Trees

  • Deleting Values

Decision Trees

  • Understanding Random Search

Basic Network Algorithms

  • Understanding Network Terminology

More Network Algorithms

  • Using the Brute Force Approach

String Algorithms

  • Understanding Pattern Matching
  • Discussing about Network and String Algorithms

Cryptography

  • Calculating the Euler's Totient Function

Distributed Algorithms

  • Discussing about Cryptography, Complexity Theory, and Distributed Algorithms
×
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