Free Data Structures and Algorithms Lessons + Transcripts

UPI Study › Courses › Data Structures and Algorithms › Free lessons

Data Structures and Algorithms: every lesson, free with a free account

17 chapters · 87 lessons with full transcripts · 86 with video so farComputer Science 251 · 3 credits · recommended for credit by NCCRS

Earn 3 college credits for Data Structures and AlgorithmsRead any transcript free; a free account unlocks every video. Enrolling adds the quizzes, graded work and the transcript that earn the credit.

Compare: Discrete Math vs Data Structures and Algorithms · Intro to Java vs Data Structures and AlgorithmsAll Computer Science courses

Chapter 1Getting Started with Java

  1. 1.1 · 12 minInstalling, Configuring, and Running Your First Java Program
  2. 1.2 · 14 minHow Java Reads and Executes Instructions Step by Step
  3. 1.3 · 12 minAutomating Repetitive Tasks Using Conditional Looping Mechanisms
  4. 1.4 · 12 minThe Complete Cycle of Writing, Testing, and Fixing Java Code

Chapter 2Planning and Documenting Code

  1. 2.1 · 14 minDesigning Program Logic Before Writing Any Code
  2. 2.2 · 13 minDocumenting Your Code for Clarity and Team Collaboration

Chapter 3Thinking in Objects

  1. 3.1 · 10 minThe Five Pillars of Reusable Software Design
  2. 3.2 · 13 minModeling Real-World Entities as Programmable Objects
  3. 3.3 · 14 minHow Child Types Borrow and Extend Behavior from Parent Types
  4. 3.4 · 11 minChoosing Between Contracts and Partial Blueprints

Chapter 4Abstract Types, Exceptions, and Nested Classes

  1. 4.1 · 10 minDefining Data Behavior Without Implementation Details
  2. 4.2 · 11 minTurning Data Definitions into Working Java Code
  3. 4.3 · 11 minAnticipating and Recovering from Runtime Errors Gracefully
  4. 4.4 · 8 minGrouping Helper Classes Inside Other Classes
  5. 4.5 · 11 minInner Classes That Depend on Their Enclosing Object

Chapter 5Arrays

  1. 5.1 · 13 minHow Arrays Store Data
  2. 5.2 · 11 minRearranging Elements Within a Fixed-Size Collection
  3. 5.3 · 10 minRows, Columns, and Higher Dimensions
  4. 5.4 · 8 minDetermining Whether Two Collections Hold Identical Content
  5. 5.5 · 7 minCopying Arrays Safely

Chapter 6Linked Lists

  1. 6.1 · 10 minWhy Connecting Nodes Solves Problems Arrays Cannot
  2. 6.2 · 9 minSingly Linked Lists
  3. 6.3 · 8 minCircular Linked Lists
  4. 6.4 · 10 minForward and Backward Navigation Between Nodes

Chapter 7Measuring Algorithm Efficiency

  1. 7.1 · 8 minWhat Separates a Good Solution from a Poor One
  2. 7.2 · 7 minEvaluating a Solution's Speed and Memory Use
  3. 7.3 · 9 minEfficient Growth Rates
  4. 7.4 · 11 minQuadratic, Cubic, and Exponential Growth
  5. 7.5 · 9 minGrowth Categories and Asymptotic Bounds
  6. 7.6 · 10 minProving That an Algorithm Works Correctly

Chapter 8Recursion

  1. 8.1 · 8 minWhen to Call Itself vs. When a Loop Does Better
  2. 8.2 · 12 minThinking Recursively
  3. 8.3 · 11 minCalculating the True Cost of Methods That Call Themselves
  4. 8.4 · 11 minSelf-Calling Techniques for Complex Structures

Chapter 9Searching

  1. 9.1 · 10 minChecking Every Element One at a Time Until the Target Appears
  2. 9.2 · 9 minBinary Search
  3. 9.3 · 9 minSplitting a Sorted Collection in Half, Recursively
  4. 9.4 · 10 minDoubling the Search Range Until the Target Is Found

Chapter 10Stacks, Queues, and Deques

  1. 10.1 · 9 minStacks
  2. 10.2 · 9 minProcessing the Earliest Added Element First
  3. 10.3 · 10 minAdding and Removing at Both Ends of a Sequence
  4. 10.4 · 14 minStack Applications: Expressions, Undo and Call Tracking
  5. 10.5 · 10 minQueue Applications: Scheduling, Buffering, Traversal

Chapter 11Dynamic Lists, Iterators, and the Collections Framework

  1. 11.1 · 11 minCollections That Grow as Elements Are Added
  2. 11.2 · 10 minPositional List Operations
  3. 11.3 · 11 minVisiting Every Element of a Collection One at a Time
  4. 11.4 · 14 minA Tour of Java's Pre-Built Collection Tools
  5. 11.5 · 11 minRearranging Positional Collections into Order

Chapter 12Trees

  1. 12.1 · 12 minWhy Hierarchies Represent Nested Relationships
  2. 12.2 · 12 minBinary Trees: Structure, Properties, and Traversals
  3. 12.3 · 11 minChoosing the Right Tree: Layouts and Applications

Chapter 13Priority Queues and Heaps

  1. 13.1 · 10 minThe Priority Queue: Why Some Lines Need to Prioritize
  2. 13.2 · 12 minBuilding a Priority Queue in Java, Step by Step
  3. 13.3 · 9 minHeaps: A Complete Binary Tree That Keeps Priority Order
  4. 13.4 · 10 minSorting With Priority Queues: Heap Sort

Chapter 14Maps and Hashing

  1. 14.1 · 8 minMaps: Pairing Unique Keys With Their Values
  2. 14.2 · 12 minHash Functions: Spreading Keys Evenly Across Slots
  3. 14.3 · 10 minHash Tables: The Array Behind Near-Instant Lookup
  4. 14.4 · 10 minOpen Addressing: Linear and Quadratic Probing
  5. 14.5 · 10 minSorted Maps: Keeping Key-Value Pairs in Order
  6. 14.6 · 13 minSeparate Chaining: Linked Buckets
  7. 14.7 · 9 minReal Applications Built on Hashing

Chapter 15Balanced Search Trees

  1. 15.1 · 11 minBinary Search Trees: Smaller Keys Left, Larger Keys Right
  2. 15.2 · 11 minAVL Trees: Rebalancing After Every Insertion and Deletion
  3. 15.3 · 10 minMultiway Search Trees: 2-3 Trees, 2-4 Trees, and B-Trees
  4. 15.4 · 9 minBalanced Trees Compared: Red-Black Trees and TreeMap

Chapter 16Sorting, Selection, and Text Processing

  1. 16.1 · 10 minElementary Sorts: Bubble Sort and Selection Sort
  2. 16.2 · 10 minMerge Sort: Split in Half, Sort Each Piece, Combine
  3. 16.3 · 8 minChoosing a Pivot and Partitioning Everything Around It
  4. 16.4 · 10 minInsertion Sort: Sliding Each Element into Place
  5. 16.5 · 13 minComparing Sorts: Speed, Memory, and Stability
  6. 16.6 · 12 minFinding Another Slot When the Home Slot Is Taken
  7. 16.7 · 13 minSorting and Selection in Practice
  8. 16.8 · 9 minStrings: Why Text Needs Its Own Data Handling
  9. 16.9 · 10 minPattern Matching: Finding a Word Inside a Text
  10. 16.10 · 11 minTries: Storing Vocabularies in Prefix Trees
  11. 16.11 · 9 minHuffman Coding: Shorter Codes for Frequent Characters

Chapter 17Graphs and Memory

  1. 17.1 · 11 minGraphs and Their Representations
  2. 17.2 · 9 minHow Different Connection Types Change a Network
  3. 17.3 · coming soonCheapest Routes in a Weighted Network
  4. 17.4 · 14 minGraphs Through the Lens of Discrete Mathematics
  5. 17.5 · 9 minTelling Networks Apart by Shape, Density, and Loops
  6. 17.6 · 11 minSolving Real Problems by Modeling Them as Networks
  7. 17.7 · 9 minHow Java Allocates, Tracks, and Reclaims Memory
  8. 17.8 · 8 minWhy Frequently Used Data Lives in Faster, Smaller Memory
  9. 17.9 · 9 minNavigating Massive Disk Datasets with Multi-Level Index Trees
  10. 17.10 · 8 minArranging Data Too Large to Fit in Main Memory

FAQ

Questions about Data Structures and Algorithms

Is this Data Structures and Algorithms lesson free?
Yes, with a free UPI Study account. Every one of the 87 video lessons in Data Structures and Algorithms has its own page with the full transcript, free to read; a free account unlocks the videos. The practice quizzes, graded work and college credit come with the course.
How many college credits is Data Structures and Algorithms?
Data Structures and Algorithms (Computer Science 251) carries a NCCRS credit recommendation for 3 semester credits. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities.
How much does Data Structures and Algorithms cost and what is included?
$250, paid once, with lifetime access: all 87 video lessons, a practice quiz after each, the graded work and final exam, and an official transcript when you finish. Students who want several courses choose UPI Study PRO instead.
Which universities accept UPI Study credits?
UPI Study has signed partner agreements with universities such as Thomas Edison State University, University of the People and Charter Oak State College, and works with universities such as Penn State, SNHU and SUNY. ACE and NCCRS have over 2,100 cooperating colleges that will consider accepting credits; the final decision is with the universities. Use "Find my college" on this page to check yours.
Can I download the Data Structures and Algorithms syllabus?
Yes, the full syllabus is a free PDF download; it asks you to sign in with a free UPI Study account first.
How long does Data Structures and Algorithms take?
It is self-paced with no deadlines. The 87 lessons total about 15 hours of video; most students add reading and practice time and finish in a few weeks to a few months, on their own schedule.
Do I need a prerequisite first?
Chapter 1 starts from installing Java and running a first program, so a student new to Java can begin there; some programming experience helps. UPI Study also offers Introduction to Java and Programming in Python as separate courses.
How are the exams done?
Quizzes and assignments are online in the course. The final exam is taken online with proctoring; a person on the UPI Study team checks assignments, usually within two days.
How do my credits reach my college?
When the course shows 100% complete, request the official transcript from your dashboard. It is sent to the college you name, and you can send it to more than one. Check your college first with "Find my college" on this page, or ask Athena.
Is there a way to get every course, not just this one?
Yes. UPI Study PRO gives access to every current course, monthly, yearly, or once for Lifetime access. See the pricing page for the plans.