UOP-CSS430.AE2
Algorithmic Theory and Practice
Beginner Self-paced · 1 year access
38 Hands-On LiveLabs
Practice real IT tasks in guided environments.
- Real environments
- Auto-graded
- No installation
01 / Lessons & labs
See exactly what you will learn and practice
Lessons
6 Interactive Lessons · 131 topics01 Algorithm Basics and Linked Lists 22 topics · 10 LiveLab +
- Approach
- Algorithms and Data Structures
- Pseudocode
- Algorithm Features
- Practical Considerations
- Randomizing Data
- Finding Greatest Common Divisors
- Performing Exponentiation
- Working with Prime Numbers
- Performing Numerical Integration
- Finding Zeros
- Gaussian Elimination
- Least Squares Fits
- 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
- Exercises
10 LiveLab in this lesson — see the labs panel →
02 Arrays, Stacks, Queues, and Sorting 13 topics · 13 LiveLab +
- Basic Concepts
- One-Dimensional Arrays
- Nonzero Lower Bounds
- Triangular Arrays
- Sparse Arrays
- Matrices
- Stacks
- Queues
- Binomial Heaps
- O(N2) Algorithms
- O(N log N) Algorithms
- Sub O(N log N) Algorithms
- Exercises
13 LiveLab in this lesson — see the labs panel →
03 Searching, Hash Tables, and Recursion 34 topics · 8 LiveLab +
- Linear Search
- Binary Search
- Interpolation Search
- Majority Voting
- Hash Table Fundamentals
- Chaining
- Open Addressing
- 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
- Exercises
8 LiveLab in this lesson — see the labs panel →
04 Trees, Decision Trees, Network Algorithms 21 topics · 6 LiveLab +
- Tree Terminology
- Binary Tree Properties
- Tree Representations
- Tree Traversal
- Sorted Trees
- Lowest Common Ancestors
- Threaded Trees
- Specialized Tree Algorithms
- Interval Trees
- Searching Game Trees
- Searching General Decision Trees
- Swarm Intelligence
- Topological Sorting
- Cycle Detection
- Map Coloring
- Maximal Flow
- Network Cloning
- Cliques
- Community Detection
- Eulerian Paths and Cycles
- Exercises
6 LiveLab in this lesson — see the labs panel →
05 Cryptography, Complexity Theory, and Distributed Algorithms 22 topics · 2 LiveLab +
- Terminology
- Transposition Ciphers
- Substitution Ciphers
- Block Ciphers
- Public-Key Encryption and RSA
- Other Uses for Cryptography
- 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
- Types of Parallelism
- Distributed Algorithms
- Exercises
2 LiveLab in this lesson — see the labs panel →
06 Appendix A: Summary of Algorithmic Concepts 19 topics +
- 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 Labs Our edge
38 LiveLabs- Learning Common Run Time Functions
- Understating about Big O Notation
- Understanding Algorithm Complexity Through Graph Visualization
- Creating Pseudorandom Numbers
- Making Random Walks
- Calculating Greatest Common Divisors
- Testing of Primality
- Performing Numerical Integration
- Using Back Substitution
- Finding Cells
- Implementing Linear Search in an Unsorted Array
- Finding Median
- Finding Average
- Learning about Array Types
- Adding Matrices
- Reversing An Array
- Understanding Stacks
- Understanding Queues
- Merging Trees
- Understanding Binomial Trees
- Understanding the Heap Sort Algorithm
- Understanding Sorting Algorithm
- Summarizing the Algorithms
- Understanding the Linear Search Algorithm
- Understanding Binary Search
- Understanding Interpolation Search
- Tracing Fibonacci Computation Using Dynamic Programming
- Understanding Open Addressing
- Understanding the Factorial
- Learning about the Koch Curves
- Understanding Eight Queens Problem
- Evaluating Binary Tree Properties and Structure
- Understanding Tree Terminology
- Calculating Number of Nodes
- Learning About Tree Traversal
- Understanding Random Search
- Using the Brute Force Approach
- Calculating the Euler's Totient Function
- Differentiating Cipher Techniques Based on Functionality
Labs run in your browser — nothing to install.
02 / FAQs
Questions before you start
Prepare for Algorithmic Theory and Practice
One-time payment. Full access for 1 year. Start with a free trial if you want to look around first.
- 1 year of full access
- 38 LiveLab included
- Certificate of completion
No credit card required